Устранение неполадок allurectl
Примечание
Инструкция актуальна для allurectl версии 2.22.1. Подробнее о новых возможностях и улучшениях allurectl см. на официальной странице релизов в GitHub.
Чтобы диагностировать проблемы импорта через allurectl, настройте уровень логирования для вывода отладочной информации в командную строку. Для этого используйте флаг --log с указанием нужного уровня логирования:
fatal,error,warn,info,debug,trace.
Совет
По умолчанию используется уровень info. Для изучения неполадок используйте уровень debug.
Примеры настройки уровня логирования в allurectl
bash
# Пример для команды upload
allurectl --log debug upload build/allure-results
# Пример для команды watch
allurectl watch --log debug -- ./gradlew clean testИнстанс ТестОпс недоступен во время импорта через allurectl
Если во время выполнения команды watch инстанс ТестОпс недоступен, по умолчанию allurectl дожидается выполнения всех тестов в пайплайне CI-системы и повторяет отправку результатов тестов. Если попытка оказалась неуспешной, импорт завершается ошибкой с кодом 1 и пайплайн CI-системы отмечается как неуспешный, даже если тесты в нем были полностью выполнены.
Чтобы статус пайплайна CI-системы определяли тесты, а не доступность инстанса ТестОпс, используйте команду --continue-on-error. В этом случае выполнение команды watch завершится с тем же кодом, что и команда запуска тестов.
Пример использования команды --continue-on-error
bash
allurectl watch --continue-on-error -- ./gradlew clean testЧтобы останавливать тесты в пайплайне CI-системы при недоступности инстанса ТестОпс, используйте команду --fail-fast. В этом случае запуск тестов прерывается, а выполнение пайплайна CI-системы завершается с ошибкой.
Пример использования команды --fail-fast
bash
allurectl watch --fail-fast -- ./gradlew clean testВажно
Флаги --continue-on-error и --fail-fast нельзя указывать в одной команде watch. При таком сочетании allurectl завершает выполнение с ошибкой.
Проблемы с результатами тестов и их вложениями после импорта через allurectl
Если после импорта результатов тестов в ТестОпс через allurectl они отсутствуют в целевом запуске, получили неверные статусы или содержат другие ошибки импорта, см. Устранение неполадок → Результаты тестов и Устранение неполадок → Вложения результатов тестов.
Тесты не запускаются выборочно через allurectl
Если пайплайн CI-системы выполнил все тесты вместо выбранных в ТестОпс, это значит, что тестовый фреймворк не получил тест-план: файл testplan.json не был создан или адаптер Allure Framework не смог его прочитать.
Чтобы найти причину ошибки:
Если тесты запускаются из интерфейса ТестОпс, проверьте, что в окружении пайплайна CI-системы не задана переменная
ALLURE_TESTPLAN_PATH.Примечание
Если переменная
ALLURE_TESTPLAN_PATHзадана, allurectl не запрашивает у ТестОпс список выбранных тестов.Проверьте, что адаптер Allure Framework, который вы используете, поддерживает выборочный запуск тестов.
Проверьте, что переменная
ALLURE_JOB_RUN_IDдоходит до окружения, в котором запускается allurectl, выполнив команду:bashprintf 'ALLURE_JOB_RUN_ID=<%s>\n' "${ALLURE_JOB_RUN_ID-}"Примечание
Если между угловыми скобками пусто, переменная
ALLURE_JOB_RUN_IDотсутствует в окружении. Без нее allurectl не получит список для создания файла testplan.json и тестовый фреймворк выполнит все тесты.
Если причину ошибки не удалось определить, создайте обращение в Центре поддержки с типом запроса Требуется поддержка.

