Интеграция Allure Report в тестовые проекты на WebdriverIO предоставляет детализированную аналитику и удобное представление результатов тестов. Поддерживается отображение шагов, статусов, вложений, метаданных и истории прогонов, что делает Allure одним из самых практичных репортинговых решений в экосистеме WebdriverIO.
Базовая интеграция включает два компонента: адаптер для WebdriverIO и пакет для генерации отчётов. Через npm устанавливаются:
npm install --save-dev @wdio/allure-reporter allure-commandline
Пакет @wdio/allure-reporter регистрируется в
конфигурации WebdriverIO и формирует промежуточные данные о прохождении
тестов. Пакет allure-commandline отвечает за финальную
сборку отчёта в HTML.
Требования к версии WebdriverIO и Allure должны соотноситься. Для WebdriverIO v7+ применяется вторая версия Allure Adapter, что позволяет использовать вложения, шаги и метаданные.
wdio.conf.jsВ разделе reporters конфигурационного файла добавляется
запись:
reporters: [
['allure', {
outputDir: 'allure-results',
disableWebdriverStepsReporting: false,
disableWebdriverScreenshotsReporting: false
}]
]
Ключевые параметры:
outputDir — каталог с сырыми результатами тестов.disableWebdriverStepsReporting — отключение
автоматической записи шагов от WebDriver команд.disableWebdriverScreenshotsReporting — отключение
прикрепления скриншотов.При необходимости задаются дополнительные настройки, включая присвоение ID истории или включение меток.
После завершения прогона формируются файлы в каталоге
allure-results. Для сборки HTML-отчёта используется
команда:
npx allure generate allure-results --clean
npx allure open
Команда generate создаёт HTML-структуру отчёта, а
open запускает локальный сервер для просмотра.
Allure позволяет фиксировать действия теста в виде шагов. Для этого в коде используются методы Allure Reporter:
import allure from '@wdio/allure-reporter';
allure.startStep('Авторизация пользователя');
// тестовые шаги
allure.endStep();
При этом применяют автоматическую запись шагов WebDriver, что часто позволяет отказаться от ручного описания.
Allure поддерживает структуру требований через метки:
allure.addFeature('Авторизация');
allure.addStory('Успешный вход');
allure.addSeverity('critical');
Также добавляются ссылки на дефекты или задачи:
allure.addIssue('AUTH-235');
allure.addTestId('TEST-102');
Метаданные определяют связь тестов с бизнес-процессами и системами управления разработкой.
Allure позволяет прикреплять:
Пример добавления вложения:
allure.addAttachment('response.json', JSON.stringify(responseBody), 'application/json');
Для UI-тестов наиболее распространено автоматическое прикрепление скриншотов на падениях тестов, что включено в WebdriverIO по умолчанию.
wdio-allure-service и расширенные возможностиСервис WebdriverIO предоставляет интеграцию с:
В конфигурации допускается настройка повторов тестов, что отражается в отчёте отдельными блоками.
История хранится в каталоге allure-history рядом с
результатами. При повторных прогонах формируется:
Эта информация особенно полезна при CI-интеграции, где отчёты доступны для анализа после каждого прогона.
Allure Report часто подключают к:
В большинстве случаев требуется:
allure-results как build artifactJenkins имеет готовый плагин Allure, упрощающий просмотр и историю прогона.
Хотя WebdriverIO ориентирован на UI-тестирование, Allure корректно отображает вложения результатом HTTP-запросов:
Для этого вручную добавляются вложения на момент проверки.
При запуске тестов в несколько потоков каждая инстанция репортера
пишет данные в общий outputDir. После завершения вся
информация агрегируется без дополнительных настроек. При распределённом
запуске (например, в разных контейнерах) требуется ручная сборка
посредством объединения каталогов allure-results.
Если в WebdriverIO включены retries, Allure отражает каждый повтор:
Такая механика помогает выявлять нестабильные тесты.
В отчет можно добавить сведения об окружении:
В Allure эти данные выводятся во вкладке Environment.
Информация добавляется через файл environment.properties
или API:
allure.addEnvironment('browser', 'chrome');
Через дополнительные сервисы WebdriverIO, драйверы браузера или CI-инфраструктуру часто прикрепляют:
Эта информация помогает анализировать причины падений UI-тестов.
При использовании Cucumber или других BDD-фреймворков Allure отображает:
Структура сценариев преобразуется в читабельные деревья и вкладки.
В больших тестовых наборах отчёт Allure используется как аналитический инструмент. Наиболее ценно:
Поддержка истории позволяет выявлять тенденции деградации или улучшения качества релизов.
Для повышения ценности отчётов используются:
Эти практики позволяют превратить отчёт в полноценный инструмент анализа качества продукта, а не просто список статусов.