Адаптеры автотестов
Официальные адаптеры привязывают автотесты к кейсам Tracera и отправляют результаты.
Перед началом
- URL установки (
TRACERA_BASE_URL). - Токен автотеста проекта (
TRACERA_AUTOTEST_TOKEN) — Настройки проекта → Автотест (см. Токены). - Id проекта (
TRACERA_PROJECT_ID). - Id тест-кейса (
testCaseId) с карточки кейса.
Требования
Проверено на:
- Node.js 22.19–26.12 (все JS-адаптеры).
- Python 3.11–3.15 (все Python-адаптеры).
- JDK 17–27 (все JVM-адаптеры).
- .NET 8–10 (все .NET-адаптеры).
- Go 1.25–1.27 (все Go-адаптеры).
- Dart 3.8–3.13 (все Dart-адаптеры).
- Swift 6–6.4 (macOS 15–27 / Xcode 16–27; все Swift-адаптеры).
Окружение
Адаптер берёт каждую переменную сначала из окружения процесса. Если ключа TRACERA_* нет или он пустой — заполняет его из ближайшего файла .env: рабочая директория и родители (не домашняя папка). Остальные ключи в файле игнорируются. Непустое значение из окружения процесса побеждает .env.
| Переменная | Обязательно | Описание |
|---|---|---|
TRACERA_BASE_URL | да | URL установки |
TRACERA_AUTOTEST_TOKEN | да | Токен автотеста проекта |
TRACERA_PROJECT_ID | да | Id проекта |
TRACERA_TEST_RUN_ID | нет | Отправка результатов в существующий прогон (без завершения). Без id — создать новый прогон |
TRACERA_RUN_TITLE | нет | Заголовок создаваемого прогона (≤128). Только при создании прогона; при TRACERA_TEST_RUN_ID игнорируется |
TRACERA_REQUIRE_REPORT | нет | По умолчанию false; true → упасть, если не удалось создать прогон или отправить результаты |
TRACERA_LOG_LEVEL | нет | error, warn, info (по умолчанию), debug |
Режим прогона
- Без
TRACERA_TEST_RUN_ID— адаптер создаёт пустой прогон, пишет в него результаты и завершает этот прогон, когда автотесты закончатся. - С
TRACERA_TEST_RUN_ID— только отправка результатов в указанный прогон; адаптер его не завершает.
Чтобы стартовать CI из интерфейса при запуске/перезапуске прогонов, см. Интеграции.
Хуки
В Предусловие / Постусловие результата попадают только хуки на уровне теста. Хуки уровня suite не попадают в отчёт как шаги. Если упала подготовка suite и раннер всё же запускает привязанные тесты, они попадают в отчёт как Failed с текстом этой ошибки (обычно без шагов). Постусловие уровня suite не меняет результаты, уже завершившиеся как Passed.
Повторы
Если раннер повторяет Failed тест, в отчёт попадает только финальная попытка. При повторе авто-теста
(retry > 0), во вкладке Env появляется ключ раннера вроде PLAYWRIGHT_RETRY или
JEST_RETRY (1 — второй запуск). На странице каждого раннера с поддержкой повторов указано имя этого ключа в Env.
Комментарии, ошибки и вложения
tracera.comment, tracera.error и tracera.attachment добавляются к текущему шагу, если вызвать их
внутри шага; вне шага — к результату.
tracera.error только добавляет текст ошибки — тест из‑за этого не падает. Для Failed используйте fail API раннера.
Лимиты вложений
| Лимит | Значение |
|---|---|
| На шаг | до 10 файлов |
| На результат (вне шагов) | до 10 файлов |
| Размер файла | до 50 MB каждый |
Сервер определяет тип по содержимому и расширению файла. Неподдерживаемые типы отклоняются (ошибка загрузки в логе адаптера).
Допустимые типы
Изображения: image/png, image/jpeg, image/gif, image/webp
Документы / данные: text/plain, text/csv, application/pdf, application/json,
application/xml, application/zip
Архивы: application/gzip, application/x-tar
Видео: video/webm, video/mp4
Прочие файлы: application/octet-stream
Раннеры
JavaScript: Playwright JS, Cypress, WebdriverIO, Jest, Vitest
Python: Pytest, Playwright Python, Robot Framework, Behave
JVM: JUnit 5, TestNG, Kotest, Cucumber JVM, Android
Swift: Swift Testing, XCUITest