Каковы "локальные" переменные в Postman?
Документация Postman оставляет желать лучшего. На странице Variables они говорят:
Доступны следующие области:
- Global
- Окружающая среда
- Local
- Данные
Здесь представлена информация о областях глобальной и окружающей среды, и я считаю, что область данных "Данные" - это данные из запуска коллекции. Но каковы "локальные" переменные?
Потому что я хотел бы иметь переменную, которая рассчитывается "на лету", которая используется для запроса, а затем отбрасывается. Как глобальные, так и переменные среды являются постоянными.
Ответы
Ответ 1
Согласно Краткому справочнику Почтальона, локальные переменные доступны только в запросе (или в прогоне сбора), который их установил. Поэтому они используются для выполнения запроса или сбора, а затем отбрасываются.
Когда использовать:
передача данных из сценария предварительного запроса в запрос или тесты или между запросами.
Поведение немного отличается в Postman vs Collection Runner/Newman, поэтому убедитесь, что вы понимаете, как они работают, прежде чем использовать!
настройка
pm.variables.set('myVariable', MY_VALUE);
Получение
pm.variables.get('myVariable', MY_VALUE);
Удаление
Локальные переменные автоматически удаляются после выполнения тестов/завершения сбора.
Ответ 2
Локальные переменные - это те, которые вы используете в своей части "Тесты".
Вы даже можете использовать декларацию "let", поскольку она закодирована в javascript...
то есть:
let jsonData;
jsonData = JSON.parse(responseBody);
или использовать var для объявления.
var jsonData = JSON.parse(responseBody);
Хотя вы можете стереть глобальные переменные на лету, используя
pm.environment/global.unset(<variable>)
см. здесь для деталей