Ответ
Окружения в Postman — это контейнеры для наборов переменных (ключ-значение), которые позволяют динамически менять контекст выполнения запросов. Это ключевой инструмент для работы с разными серверами (dev, staging, prod) и конфигурациями без дублирования коллекций.
Основное применение:
- Переключение между разными средами API (например,
{{baseUrl}}/api/usersбудет подставлятьhttps://dev.api.comилиhttps://api.com). - Безопасное хранение и использование чувствительных данных (токены, ключи API).
- Параметризация тестовых данных.
Как это работает:
- Создаётся окружение (например, "Dev", "Staging").
- В нём определяются переменные:
baseUrl,apiToken,userId. - В запросах и тестах переменные ссылаются через двойные фигурные скобки:
{{baseUrl}}/login. - Перед запуском запросов выбирается активное окружение.
Пример настройки окружения "Staging":
{
"id": "env-123",
"name": "Staging",
"values": [
{
"key": "baseUrl",
"value": "https://staging-api.example.com",
"type": "default",
"enabled": true
},
{
"key": "authToken",
"value": "", // Может быть заполнено скриптом после логина
"type": "secret",
"enabled": true
}
]
}
Использование в запросе:
GET {{baseUrl}}/users/{{userId}} HTTP/1.1
Authorization: Bearer {{authToken}}
Content-Type: application/json
Расширенные возможности:
- Динамические переменные: Скрипты в вкладках "Pre-request Script" и "Tests" могут устанавливать/менять переменные окружения.
// В Tests после успешного логина if (pm.response.code === 200) { const jsonData = pm.response.json(); pm.environment.set("authToken", jsonData.access_token); // Сохраняем токен } - Глобальные переменные: Переменные, доступные во всех окружениях и коллекциях.
- Экспорт/Импорт: Удобно для передачи настроек команде или между проектами.
Использование окружений делает коллекции Postman гибкими, переиспользуемыми и удобными для командной работы.