Тема
Адаптеры для тестовых фреймворков
Адаптер — библиотека, которую вы подключаете в тестовый проект. Во время прогона она отправляет результаты в DoQA через Autotest API прямо из тестового процесса — в реальном времени по ходу выполнения или одним батчем в конце. Результаты приходят структурными: с шагами, фикстурами, вложениями, метками и привязкой к тест-кейсам — без файлов отчётов и ручной выгрузки.
Адаптер или отправка отчётов
DoQA принимает результаты и без адаптера — файлами отчётов JUnit XML или Allure: через интерфейс, утилитой doqa-cli или запросом к report-API. Эти способы описаны на странице Отправка результатов автотестов. Адаптер — более глубокий уровень интеграции:
| Возможность | Файлы отчётов (интерфейс, doqa-cli, report-API) | Адаптер |
|---|---|---|
| Фреймворки | любой, умеющий писать JUnit XML или Allure | только поддерживаемые платформы (см. ниже) |
| Шаги и фикстуры | только из Allure-результатов; JUnit XML шагов не содержит | да: декларативные и программные шаги, фикстуры вплоть до @BeforeAll/@AfterAll |
| Вложения | из Allure-архива | да: файлы и контент из памяти, прямо из кода теста |
| Внешний ID без правки кода | нет: ID задаётся меткой или свойством в артефакте отчёта | да: выводится автоматически, вплоть до хэша сигнатуры теста |
| Привязка к тест-кейсам | метки и свойства в артефакте отчёта | аннотации и вызовы в коде теста |
| Результаты в реальном времени | только со стримингом doqa-cli watch | да: режим стриминга по ходу прогона |
| Запуск выбранных автотестов из DoQA | частично: через нативный фильтр или тест-план, фильтрацию выполнения настраивает пайплайн (doqa-cli watch применяет тест-план сам) | да: селективный режим из коробки — исполняются только тесты из плана прогона |
Оба пути сосуществуют. Отчёты — универсальный способ, который работает без правок тестового проекта; адаптер добавляет структуру результата, стабильную идентичность автотеста и селективные запуски.
Поддерживаемые платформы
| Платформа | Фреймворк | Библиотека |
|---|---|---|
| JVM (Java, Kotlin) | JUnit 5 (Jupiter) | app.doqa:doqa-junit5, опубликована в Maven Central |
Полный гайд по подключению и настройке — Адаптер JUnit 5. Проект уже размечен Allure-аннотациями — Переезд с Allure: всё подхватывается без правок кода.
Если адаптера под ваш фреймворк нет:
- отправляйте готовые отчёты JUnit XML или Allure — все способы работают с любым фреймворком, который умеет писать эти форматы;
- напишите собственный адаптер поверх Autotest API — прямого API, через которое работают и готовые адаптеры;
- напишите в поддержку support@doqa.app — запросы на новые адаптеры принимаются.
Общие понятия
Пользовательские интерфейсы адаптеров устроены одинаково; ниже — понятия, общие для всех. Конкретные ключи, аннотации и примеры — на странице адаптера.
Конфигурация подключения
Адаптеру нужны три параметра: адрес DoQA, API-токен и ID пространства. Токен обычно задаётся переменной окружения в CI, а не в файле в репозитории. Как создать токен и узнать ID пространства — в разделах «Создание API-токена» и «Как узнать ID пространства».
Внешний ID
Каждый автотест идентифицируется в DoQA внешним ID — стабильным ключом, который не зависит от имени теста. Адаптер либо берёт его из явной аннотации в коде (в JVM — @DoqaId), либо выводит автоматически. Как внешний ID работает на стороне DoQA — на странице Автотесты.
Режим работы и прогон
Адаптер решает, в какой прогон записывать результаты:
- создать новый — режим по умолчанию: адаптер сам создаёт прогон и наполняет его;
- писать в существующий — прогон создан заранее в интерфейсе или через API, адаптеру передаётся его ID;
- селективный — адаптер запрашивает у DoQA список автотестов, которые числятся в прогоне, и исполняет только их.
Селективный режим использует сам DoQA: при запуске автотестов из интерфейса пайплайну передаётся ID прогона, и адаптер прогоняет ровно выбранные тесты.
Смотрите также
- Каталог автотестов — куда попадают присланные адаптером автотесты
- Результаты и разбор падений — как выглядят шаги, вложения и ошибки в прогоне
- Первый запуск автотестов — сценарий первой интеграции с DoQA