Проект по автоматизации тестирования API для веб-приложения Book Store
➠ Отчет о результатах тестирования в Allure Report
➠ Интеграция тестов c тест-менеджмент системой Allure TestOps
Разработаны автотесты на
API
.
- Запросы
GET
,POST
иDELETE
- Успешная генерация токена
- Отображение списка всех книг
- Отображение определенной книги по ISBN в списке всех книг
- Добавление и удаление книги в профиле пользователя
- Отображение
statusCode
иbody
в ответе запроса - Соответствие
body
ответаJSON Schema
- Отображение значений ключа в соответствии с проверкой на
Groovy
В данном проекте автотесты написаны на
Java
с использованием библиотекиREST Assured
для API-тестов.
Allure Report
формирует отчет о запуске тестов.Для автоматизированной сборки проекта используется
Gradle
.В качестве библиотеки для модульного тестирования используется
JUnit 5
.
Jenkins
выполняет запуск тестов.Автотесты интегрируются с тест-менеджмент системой
Allure TestOps
и таск-трекер системойJira
.После завершения прогона отправляются уведомления с помощью бота в
Telegram
.
gradle clean ${TASK}
ℹ️ Для запуска тестов должны существовать следующие файлы ⇩
👈
credentials.properties
В файле должны быть расположены:
userName
иpassword
– данные для авторизации в веб-приложении Book Store👈
api.properties
В файле должны быть расположены:
apiURL
– адрес сервера, который будет использоваться в тестах
👈
TASK
– список тестов, сгруппированных по параметру тега. В зависимости от выбранного параметра, будут запускаться определенные группы тестов.Доступные варианты:
test
– запуск всех тестовhigh_priority_tests
– запуск высокоприоритетных тестов с тегами Critical, Highest, Blocker, Highweb_test
– запуск тестов с тегом Webapi_test
– запуск тестов с тегом API
allure serve build/allure-results
❗ Для формирования отчета должен быть установлен
Allure
.
Запуск тестов в Jenkins
- Открыть сборку Jenkins
- Нажать на таск
"Собрать с параметрами"
- Указать значения параметров
- Нажать на кнопку
"Собрать"
Отчет о результатах тестирования в Allure Report
Allure-framework используется в качестве инструмента для построения отчетов о прогоне автотестов. Он позволяет получить информацию о ходе выполнения тестов, а также прикрепить скриншоты, логи и видео к формируемому отчету. Имеется возможность указать различные теги, приоритеты и прочую сопутствующую информацию для тестов.
👈 Страница
Overview
Сраница
Overview
является главной страницей Allure-отчета.Состоит из следующих блоков:
Блок
ALLURE REPORT
– включает в себя дату и время прохождения теста, общее количество прогнанных кейсов, а также диаграмму с указанием процента и количества успешных, упавших и сломавшихся в процессе выполнения тестов.Блок
TREND
– показывает тренд прохождения тестов от сборки к сборке.Блок
SUITES
– показывает распределение результатов тестов по тестовым наборам.Блок
ENVIRONMENT
– показывает тестовое окружение, на котором запускались тесты.Блок
CATEGORIES
– показывает распределение неуспешно прошедших тестов по видам дефектов.Блок
FEATURES BY STORIES
– показывает распределение тестов по функционалу, который они проверяют.Блок
EXECUTORS
– показывает исполнителя текущей сборки. Если выполнение производилось на инструменте CI (например, на Jenkins), то будет предоставлена информация о джобе и номере сборки.
👈 Страница
Graphs
На странице
Graphs
можно получить информацию о тестовом прогоне в графическом виде: статус прогона, распределение тестов по критичности, длительности прохождения, перезапускам, категориям дефектов и так далее.
👈 Страница
Behaviors
На странице
Behaviors
тесты сгруппированы по проверяемому функционалу (Epic, Feature, Story).
👈 Прочие страницы
Страница
Categories
– данная страница предоставляет информацио о распределении дефектов по их видам.Страница
Suites
– на данной странице представляется стандартное распределение выполнявшихся тестов по тестовым наборам или классам, в которых находятся тестовые методы.Страница
Timeline
– данная страница визуализирует временные рамки прохождения каждого теста.Страница
Packages
– на этой странице тесты сгруппированы по пакетам, в которых лежат тестовые классы.
Интеграция тестов c тест-менеджмент системой Allure TestOps
Allure TestOps
используется для хранения всех авто и ручных тестов, запусков и их результатов, а также статистики и отчетов.
Интеграция тестов c таск-трекер системой Jira
В проекте реализована интеграция с
Jira
, что позволяет добавлять в задачи тест-кейсы, запуски и их результаты.
После завершения сборки специальный бот, созданный в
Telegram
, автоматически обрабатывает и отправляет сообщение с отчетом о прогоне. Фреймворк также поддерживает уведомления по электронной почте, Slack, Skype и Mattermost.