Найти в Дзене

Тестирование в Postman. Вариативность тестов. Часть 6

Мы уже опытные тестировщики в Postman, умеем писать сложные запросы с подстановкой значений. Но от разных значений может быть и тело ответа также разным. Как написать тесты, чтобы они подходили под разные переменные окружения? Сегодня разберём в этой статье. Переменная определяющая окружение Мы имеем несколько переменных окружения. Давайте определим или добавим такую переменную по которой можно определить нужное. В моём случае у меня есть переменная Text по неё и буду выводить тесты. В нашем методе создания записи есть поле lastname, давайте мы его параметризуем через переменные окружения. Явно укажем название и значение Добавляем значения в переменные окружения Теперь у нас готовы переменные, сейчас нужно их подставить и написать вариативные тесты. Вариативные тесты В наш тест создания записи подставляем созданное значение Переходим к самому тесту. Для начала подправим сам тест, у нас есть проверка на firstname, в прошлой статье мы туда подставляем base64. Для начала напишем тест, к
Оглавление

Мы уже опытные тестировщики в Postman, умеем писать сложные запросы с подстановкой значений. Но от разных значений может быть и тело ответа также разным. Как написать тесты, чтобы они подходили под разные переменные окружения? Сегодня разберём в этой статье.

Переменная определяющая окружение

Мы имеем несколько переменных окружения. Давайте определим или добавим такую переменную по которой можно определить нужное. В моём случае у меня есть переменная Text по неё и буду выводить тесты.

-2

В нашем методе создания записи есть поле lastname, давайте мы его параметризуем через переменные окружения. Явно укажем название и значение

-3

Добавляем значения в переменные окружения

-4
-5

Теперь у нас готовы переменные, сейчас нужно их подставить и написать вариативные тесты.

Вариативные тесты

В наш тест создания записи подставляем созданное значение

-6

Переходим к самому тесту. Для начала подправим сам тест, у нас есть проверка на firstname, в прошлой статье мы туда подставляем base64.

-7

Для начала напишем тест, который умеем писать - на проверку переменной. Как видим всё ок, для этих переменных окружения ошибок нет. Уточню сразу, сейчас мы учимся проверять значение, которое отличается в зависимости от переменных окружения.

Да здесь пример простой, и мы в проверку вместо "ПервыйВариант" можем подставить "pm.environment.get("Value1")". Будет также успешный тест, но в реальности, таких тепличных условий не будет, так что мы будем проверять значение из тела ответа, которое мы якобы не знаем.

-8

Но тест упадёт если мы запустим его с другими переменными окружения. Так как ожидается "ПервыйВариант", а в ответе "ВторойВариант"

-9

Поэтому давайте добавим вариантов для нашего теста. Для того чтобы выставить условие, воспользуемся условием из JavaScript - if. Тут вспоминаем про параметр определяющий переменные окружения, у нас это Text.

-10
if(pm.environment.get("Text") == "Для дзена"){
pm.expect(jsonData.booking.lastname).to.eql("ПервыйВариант");
} else {
pm.expect(jsonData.booking.lastname).to.eql("ВторойВариант");
}

Дословно это звучит так. Если наш Text равен определённому значению, значит ожидаем ПервыйВариант. Иначе (else) Ожидаем ВторойВариант.

Как видим теперь наш тест будет всегда проходить по условию, и не нужно его менять или создавать новый.

-11

Вы можете сохранить себе коллекцию по данному разделу - https://api.postman.com/collections/14548453-df841372-4131-42a1-9884-ff45954e298a?access_key=PMAT-01H21BHXSV6P93H93JRD62Q98X

Если у вас есть вопросы или вы просто хотите стать частью команды тестировщиков, то переходи в ТГ канал, где можем пообщаться с единомышленниками и найти много интересных и полезных знаний!

Обучение тестированию