Найти в Дзене

Тестирование в Postman. Переменные в Environment. Часть 1

Вот мы и перешли к одному из главных инструментов тестировщика - Postman. В подборке статей разберём как пользоваться Postman, разберём все возможности и подводные камни. Создание первого запроса Скачиваем инструмент с сайта Postman.com и устанавливаем. Сразу после установки мы попадём в рабочие области: Рабочая область постман - это набор созданных вами запросов, между собой области не перекликаются, то есть если вы хотите работать с переменными то это нужно будет делать в одной области. Разделение нужно если у вас несколько различных проектов. Postman позволяет сохранять несколько рабочих областей, но в бесплатной версии это количество ограничено. Создаем (если нет) рабочую область и далее нужно создать коллекцию. Для примера мы будет использовать - https://restful-booker.herokuapp.com/ Документацию по данному API можно прочитать на этой странице. Так как у RESTful API нет такого документа, как WSDL, все параметры, свойства, ограничения приходится изучать самостоятельно, для этого с
Оглавление

Вот мы и перешли к одному из главных инструментов тестировщика - Postman. В подборке статей разберём как пользоваться Postman, разберём все возможности и подводные камни.

Создание первого запроса

Скачиваем инструмент с сайта Postman.com и устанавливаем.

Сразу после установки мы попадём в рабочие области:

-2

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

Postman позволяет сохранять несколько рабочих областей, но в бесплатной версии это количество ограничено.

Создаем (если нет) рабочую область и далее нужно создать коллекцию. Для примера мы будет использовать - https://restful-booker.herokuapp.com/

Документацию по данному API можно прочитать на этой странице.

Так как у RESTful API нет такого документа, как WSDL, все параметры, свойства, ограничения приходится изучать самостоятельно, для этого создаётся обширная документация для каждого API, для каждого запроса и ответа.

Мы будет создавать запросы по отдельности.

  • Создаём новую коллекцию и даём ей название.
-3
  • Далее создаём новый запрос, нажимая Add a request
-4
  • Мы начнём с запроса авторизации, нам нужно получить токен. Копируем запрос и тело запроса
-5
  • Выбираем метод Post - далее нажимаем Body и выбираем raw
-6
  • Тело запроса у нас в JSON формате - его и выбираем.
-7
  • Вставляем тело запроса в Body и отправляем запрос
-8
  • Запрос успешно отработал, не забываем сохранить его, нажав Save.

Вот мы уже научились создавать и отправлять запрос на сервер. При каждом запросе мы будем получать новый токен. Он нужен для использования других запросов, без него они не отправятся.

Мы можем руками брать и копировать его в каждый запрос, но мы же автоматизаторы. поэтому давайте автоматизировать!

Сохранение переменных из тела запроса

Перейдём на вкладку Test и нажмём на стрелочку справа

-9

Нам откроются шаблоны написанные на JavaScript. Вы можете писать свои, всё зависит от знаний. Мы же пока разберём как из тела ответа сохранить значение в переменную.

Различие переменных

  • Variable - значения, которые будут видны только в рамках одного запроса
  • Collections - значения, которые будут видны только в рамках одной коллекции
  • Environment- значения, которые будут видны только в рамках выбранной окружающей среды
  • Global- значения, которые будут видны глобально во всех коллекциях

Выбор переменных зависит от потребностей. Бывает нужно переменную использовать только сейчас, спокойно используем Variable. Рекомендую использовать Environment, сейчас объясню почему.

Давайте мы сначала мы их сначала создадим, нажимаем слева

-10

Создаём и даём название

-11

И так для чего они нужны:

  • У вас могут быть множество различных контуров тестирования - это означает, что тесты одни и те же но данные разные, благодаря Environment это можно менять одним нажатием. Выбираем нужную среду и запускаем тесты.
  • Эти значения можно легко экспортировать. В дальнейшем будем разбирать для чего.
  • Есть чёткое разделение тесты - переменные. Очень удобно, нет страха того, что в какой то момент нужно будет изменить значение, вам нужно будет подправить всего лишь одну строчку в Environment.

Продолжим, создаём переменную

-12

Прописываем данный скрипт, с помощью которого мы берём значение и кладём его в нашу переменную

-13
var jsonData = pm.response.json();
pm.environment.set("Token", jsonData.token);
  • pm.environment.set - означает что мы будем класть переменную в environment
  • set - что мы именно кладем (есть ещё get, когда мы берём значение)
  • "Token" - название нужной переменной
  • jsonData.token - путь до переменной в теле ответа

Справа вверху обязательно выбираем нужное окружение, если не выбрать переменная не запишется!

-14

Отправляем запрос - получаем токен

-15

Переходим в переменные окружения и проверяем, что данные сохранились

-16

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

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

Как импортировать коллекции, я расскажу в следующих статьях.

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

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