Что такое Collection Runner в Postman?
Комментарии (1)
Ответ сгенерирован нейросетью и может содержать ошибки
Collection Runner в Postman: основы, сценарии использования и возможности
Collection Runner — это мощный инструмент в экосистеме Postman, предназначенный для автоматизации выполнения заранее подготовленных наборов запросов (коллекций) в заданной последовательности и с определенными параметрами. По своей сути, это механизм для запуска тестовых сценариев API, проведения интеграционного тестирования, нагрузочного тестирования в простой форме, а также для валидации поведения API при различных условиях.
Основные цели и задачи Collection Runner
- Автоматизация тестирования API: Позволяет запускать сотни запросов без ручного вмешательства, проверяя корректность ответов с помощью встроенных тестовых скриптов (на JavaScript).
- Параметризация тестов: Ключевая функция. Runner может использовать данные из внешних файлов (JSON, CSV) для подстановки значений в переменные запросов. Это позволяет проверить один и тот же эндпоинт с разными входными данными.
- Запуск специфичных последовательностей: Некоторые сценарии требуют строгого порядка вызовов (например, создание сущности -> её чтение -> обновление -> удаление). Runner гарантирует этот порядок.
- Сбор и анализ результатов: После прогона предоставляет детальный отчет: сколько запросов выполнено, сколько тестов пройдено/провалено, время отклика и логи ошибок.
Как это работает: ключевые настройки
При запуске Collection Runner открывается окно с конфигурацией:
- Выбор коллекции и окружения (Environment): Указывается, какую коллекцию запускать и в каком окружении (набор переменных, например,
baseUrl,apiKey). - Итерации и данные:
* **Iterations:** Количество повторений всей коллекции.
* **Data File:** Загрузка файла с тестовыми данными. Каждая строка (или объект) файла — это одна итерация для всех запросов коллекции. Доступ к данным осуществляется через переменные, например, `{{username}}`.
- Задержки (Delay): Можно установить паузу между запросами, чтобы имитировать поведение реального пользователя или не перегружать сервер.
- Логирование ответов (Log responses): Настройка, определяющая, сохранять ли тело ответов для отладки. Для длинных прогонов рекомендуется отключать, чтобы не перегружать память.
Пример практического использования
Представим коллекцию с двумя запросами: 1) POST /auth для получения токена, 2) GET /users/me для получения данных профиля. В запросе /users/me используется переменная authToken.
1. Создаем файл данных users.csv:
login,password
alice,pass123
bob,qwerty
2. Пишем тестовые скрипты в Postman:
В запросе POST /auth (Tests tab):
// Парсим ответ и извлекаем токен
const jsonData = pm.response.json();
pm.environment.set("authToken", jsonData.access_token);
// Проверяем статус код
pm.test("Status code is 200", function () {
pm.response.to.have.status(200);
});
3. Настраиваем и запускаем Runner:
- Выбираем коллекцию.
- Загружаем файл
users.csv. - Выставляем
Iterations = 2(по числу строк в файле). - Нажимаем Run.
Результат: Runner выполнит две полные итерации:
- Итерация 1: Подставит
login=alice,password=pass123в запрос/auth. Полученный токен сохранит в переменнуюauthTokenи использует его дляGET /users/me. - Итерация 2: Повторит процесс для данных
bob/qwerty.
Продвинутые возможности и интеграции
- Новые возможности (Postman версии ~9): Функциональность Collection Runner была существенно переработана и интегрирована в раздел "Flows" (визуальное построение сценариев) и "Collection Runner" нового образца, который предлагает более гибкое управление последовательностью, ветвлением и циклами.
- Интеграция с CI/CD: С помощью CLI-инструмента Newman (консольный аналог Collection Runner) можно интегрировать прогоны коллекций в конвейеры непрерывной интеграции (Jenkins, GitLab CI, GitHub Actions). Это основа автоматизации тестирования API на уровне проекта.
- Мониторинг API: Регулярный запуск коллекций через Runner или Newman позволяет осуществлять простой мониторинг доступности и корректности работы API.
Отличие от "обычного" запуска и монитора
- Ручной запуск (Send): Выполняет один запрос один раз с текущими данными.
- Monitor: Выполняет коллекции по расписанию в облаке Postman, фокусируясь на мониторинге.
- Collection Runner: Локальный инструмент для контролируемого, параметризованного и повторяемого выполнения набора запросов, чаще всего для целей тестирования и отладки.
В итоге, Collection Runner — это фундаментальный инструмент автоматизации в Postman, который трансформирует коллекции из простого набора сохраненных запросов в мощные исполняемые тестовые сценарии. Его грамотное использование позволяет значительно повысить скорость, покрытие и надежность тестирования API.