Как читать переменные среды в тестах Postman?

Я использую упакованную версию приложения Postman для написания тестов против моего REST API. Я пытаюсь управлять состоянием между последовательными тестами. Чтобы облегчить это, объект Postman, представленный тестовой среде выполнения Javascript, имеет методы для установки переменных, но не для чтения.

postman.setEnvironmentVariable("key", value );

теперь я могу прочитать это значение в следующем вызове через структуру {{key}}, которая всасывает значения из текущей среды. Но это не работает в тестах; он работает только в запросе строительные материалы.

Итак, есть ли возможность прочитать этот материал из тестов?

2 ответов


согласно документам здесь можно использовать

environment["foo"] OR environment.foo
globals["bar"] OR globals.bar

для доступа к ним.

ie;

postman.setEnvironmentVariable("foo", "bar");

tests["environment var foo = bar"] = environment.foo === "bar";

postman.setGlobalVariable("foobar", "1");

tests["global var foobar = true"] = globals.foobar == true;

postman.setGlobalVariable("bar", "0");

tests["global var bar = false"] = globals.bar == false;

почтальон обновил свою песочницу и добавил pm.* API-интерфейс. Хотя старый синтаксис для чтения переменных в тестовых сценариях все еще работает, согласно docs:

после установки переменной используйте pm.variables.get() способ или, в качестве альтернативы, используйте pm.environment.get() или pm.globals.get() метод в зависимости от соответствующей области для извлечения переменной. Этот метод требует имя переменной в качестве параметра для получения сохраненное значение в скрипт.