Почтальон, использующий строку, содержит текст с переменной окружения
Надеюсь, это очень просто, но я не мог найти прямой ответ на этот вопрос, где бы я ни искал.
В Почтальоне я хочу использовать приведенный ниже тест, чтобы убедиться, что тело возвращает правильный текст.
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("string_you_want_to_search");
});
Но я хочу легко переключаться между средой разработки и тестирования, запускать тестирование и проверять, что я получаю URL-адрес разработчика и тестовый URL-адрес.
Допустим, например, у меня есть переменная с именем {{foobar}}. В тесте URL для этой переменной будет foo-test.bar.com, а в Dev это будет foo-dev.bar.com. Затем я изменяю тест, чтобы взять переменную вместо строки, например:
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include("{{foobar}}");
});
Я предполагаю, что могу использовать одну переменную env для проверки обоих URL, просто переключая среду. Но у меня не должно быть правильного синтаксиса, потому что я получаю длинную ошибку, которая начинается с "AssertionError: Ожидаемый '\r\n\r\n"
Кто-нибудь может оказать помощь? Благодарю.
1 ответ
Чтобы использовать переменные среды внутри ваших тестов, вы должны использовать метод pm.environment.get("varName"), поэтому ваш тест должен выглядеть следующим образом:
pm.test("Body matches string", function () {
pm.expect(pm.response.text()).to.include(pm.environment.get("foobar"));
});