Отчёт о выполнении автоматизированных тестов — это ключевой артефакт, который помогает анализировать результаты тестирования, выявлять проблемы и принимать решения. Вот обязательные и рекомендуемые элементы:
1. Общая сводка
- Статус выполнения: Процент пройденных/упавших/пропущенных тестов.
- Время выполнения: Общая длительность тестового прогона.
- Среда тестирования: ОС, версия браузера, устройство (для мобильных тестов).
2. Детали по тест-кейсам
- Название теста: Уникальный идентификатор или описание.
- Статус: Passed/Failed/Skipped/Blocked.
- Шаги выполнения: Логирование действий (особенно важно для BDD).
- Ожидаемый vs Фактический результат (для упавших тестов).
3. Логи и артефакты
- Стек-трейс ошибок: Для анализа падений.
- Скриншоты/Видео: Прикрепляются к упавшим тестам.
- Логи сервера/клиента: Например, консольные логи браузера или HTTP-запросы.
4. Метрики и аналитика
- История запусков: Тренды по стабильности тестов.
- Время выполнения каждого теста: Для оптимизации скорости.
- Severity/Priority: Критичность упавших тестов.
5. Контекст тестирования
- Версия продукта: Git-хэш, номер сборки.
- Тестовые данные: Использованные параметры (если влияют на результат).
- Внешние зависимости: API, базы данных.
Пример структуры отчёта
{
"summary": {
"total": 100,
"passed": 85,
"failed": 10,
"skipped": 5,
"duration": "12m 34s"
},
"testCases": [
{
"name": "Login with valid credentials",
"status": "passed",
"steps": ["Open login page", "Enter email", "Enter password", "Click submit"]
},
{
"name": "Login with invalid password",
"status": "failed",
"error": "AssertionError: Expected redirect to /dashboard",
"screenshot": "/screenshots/fail_123.png"
}
]
}
Почему это важно?
- Для разработчиков: Чёткое описание багов ускоряет их исправление.
- Для менеджеров: Статистика помогает оценить качество продукта.
- Для QA: История запусков выявляет "flake-тесты" (нестабильные тесты).
Резюмируем:
идеальный отчёт — это баланс между детализацией и читаемостью. Он должен отвечать на вопросы: Что сломалось? Где? Почему? И как это исправить? Инструменты вроде Allure или ReportPortal автоматизируют сбор этих данных.