Я использую Cypress для запуска набора автоматических тестов.
Текущая версия Cypress предоставляет mocha-junit-reporter из коробки и предоставляет параметры конфигурации для передачи репортеру. Одним из вариантов является mochaFile.
Я использую рекомендованный тег [hash] для вывода отчетов по нескольким файлам spe c.
, что приводит к беспорядку файлы, которые выглядят как «results / test-output-abc12345. xml».
Вместо этого я хочу, чтобы относительный путь и имя файла тестового файла передавались как путь к выходному файлу репортера.
Это дало бы мне структурированную функцию с первым просмотром вывода и в Azure Dev Ops, который агрегирует результаты теста, он дал бы мне правильные имена файлов для выявления периодически проваливающихся тестов.
Вещи, которые я пробовал, которые не работали:
Я пытался использовать хуки для изменения конфигурации Cypress или установки переменных среды, чтобы попытаться переопределить reporterOptions/mochaFile
для теста в (надеюсь) нужное время.
Я попытался получить выведенный по умолчанию файл xml с именем по умолчанию и скопировать его в правильный путь + имя файла с учетом контекста Cypress.spec.name
, но я не могу найти правильный крючок или время сделать это.
after
и afterEach
не работают - я не думаю, что протокол испытаний еще сохранил файл.
Использование плагина, подключение к какому-либо событию on
test:before:run
или test:after:run
кажутся многообещающими, но я летаю вслепую, так как не могу отладить его, поэтому мне не удалось изменить выходной путь репортера или копирование файла.
Мне бы очень понравилось, если бы кто-то мог показать рабочий пример, используя mocha-junit-reporter или даже другой mocha-совместимый репортер, если репортер будет хорошо играть с Azure Dev Ops и сможет мне помочь обнаруживать периодически проваливающиеся тесты.