Использование переменных окружения в Postman

Продолжу тему про Postman.

В этой заметке немного расскажу про использование переменных в Postman.

JavaScript API

Во-первых, напомню, что переменные можно использовать в JavaScript API Postman. Например, для тестов или в pre-request:

console.log(pm.variables.get('param'));
console.log(pm.environment.get('param'));
console.log(pm.globals.get('param'));

Объекты variables, globals и environment объекта pm хранят значения переменных из соответствующих scope-ов: из переменных коллекции, из глобального scope и из переменных окружения. Приоритеты получения переменной:

  1. pm.environment содержит значения переменных, означенных для окружения,
  2. pm.variables содержит значения переменных, означенных для коллекции,
  3. pm.globals содержит значения переменных, означенных в глобальном окружении.

То есть в первую очередь переменная ищется в environment, далее в variables и, в конце, в globals.

environment, globals содержат методы set('parav_name', 'param_value') для записи значения в соответствующий scope.

Использование через {{param}}

Значения из переменных можно получить в адресной строке, заголовках и в запросе при помощи синтаксиса {{param}}:

2018-01-27_20-30-15

2018-01-27_20-33-35

2018-01-27_20-21-35

Что ещё?

В нашей команде это используем следующим образом.

У нас имеется коллекция запросов к разрабатываемым сервисам. В коллекции адрес сервисов не указываются – вместо них прописаны подстановки из переменных: {{service_url}}. В переменной {{service_url}} коллекции (эта возможность доступна в бесплатной версии) указано значение по-умолчанию (адрес демо-стенда, т.к. эту коллекцию могут использовать все заинтересованные). Каждый в команде в своём окружении указывает адрес своего сервера для отладки сервисов. Таким образом достаточно в одном месте переопределить значение переменной {{service_url}} и работать с нужным сервисом.

В качестве демо с создал коллекцию, которая обращается к API сайта thetvdb. В ней указаны переменные коллекции apikey, userkey, username со значениями-заглушками и service_address с адресом API.

Переменные apikey, userkey, username необходимо переопределить в переменных окружения значениями полученными при регистрации на сайте thetvdb и можно пользоваться этоми запросами для получения информации о сериалах.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

w

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.