Проект по автоматизации тестирования API на базе сервиса Regres.IN
Сервис для тестирования API
- Используемые инструменты
- Тест-кейсы
- Запуск автотестов
- Сборка в Jenkins
- Пример Allure-отчета
- Интеграция с Allure TestOps
- Интеграция с Jira
- Уведомления в Telegram с использованием бота
Тесты написаны на языке Java
с использованием фреймворка для автоматизации API тестирования Rest Assured, сборщик - Gradle
.
JUnit 5
задействован в качестве фреймворка модульного тестирования.
При прогоне тестов для удаленного запуска используется Selenoid.
Для удаленного запуска реализована джоба в Jenkins
с формированием Allure-отчета и отправкой результатов в Telegram
при помощи бота.
Также реализована интеграция с Allure TestOps
и Jira
.
Содержание Allure-отчета для каждого кейса:
- Body и response для всех выполненных кейсов c добавленным логированием params, body, url
-
✓ Проверка пагинации
-
✓ Создание пользователя
-
✓ Обновление пользователя PUT
-
✓ Обновление пользователя PATCH
-
✓ Успешное удаление пользователя
Локальный запуск. Из корневой директории проекта выполнить:
./gradlew test запуск всех тестов
Сборка в Jenkins
Для доступа в Jenkins необходима регистрация на ресурсе Jenkins
Для запуска сборки необходимо перейти в раздел Build Now
,и нажать кнопку Build
.
После выполнения сборки, в блоке Build History
напротив номера сборки появятся значки Allure Report
и Allure TestOps
, при клике на которые откроется страница с сформированным html-отчетом и тестовой документацией соответственно.
Пример Allure-отчета
Примеры логов в тестах
Интеграция с Allure TestOps
На Dashboard в Allure TestOps
видна статистика количества тестов: сколько из них добавлены и проходятся вручную, сколько автоматизированы. Новые тесты, а так же результаты прогона приходят по интеграции при каждом запуске сборки.
Интеграция с Jira
Реализована интеграция Allure TestOps
с Jira
, в задаче отображается, какие тест-кейсы были написаны в рамках задачи и результат их прогона.
После завершения сборки, бот, созданный в Telegram
, автоматически обрабатывает и отправляет сообщение с отчетом о прогоне тестов в специально настроенный чат.