Как читать переменные среды в тестах 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()
метод в зависимости от соответствующей области для извлечения переменной. Этот метод требует имя переменной в качестве параметра для получения сохраненное значение в скрипт.