Кипарис тесты с мокко мульти отчётами; не удалось получить агрегированные результаты для всех тестовых спецификаций

Cypress тесты с мокко multi отчетами не показывают результаты всех тестов

Моя тестовая структура выглядит так:
кипарис
интеграция
module1
module1test1_spec.js
module1test1_spec.js
module2
module2test1_spec.js
module2test1_spec.js

Я настроил Cypress для использования мокко-мульти-отчетов, как в инструкции, приведенной в
https://docs.cypress.io/guides/tooling/reporters.html
Мой config.json выглядит точно так же, как здесь:
https://github.com/cypress-io/cypress-example-docker-circle
Когда Cypress заканчивает тестирование, файл results.xml показывает ТОЛЬКО результаты последней тестовой спецификации; module2test1_spec.js
Как настроить это, чтобы получить агрегированные результаты от всех тестовых спецификаций?

2 ответа

Решение

Вы можете использовать [hash].xml в своем пути.

например./path_to_your/test-results.[hash].xml. [хэш] заменяется на MD5 хэш результатов теста XML. Это позволяет поддерживать параллельное выполнение нескольких результатов теста записи mocha-junit-reporter в отдельных файлах.

https://www.npmjs.com/package/mocha-junit-reporter

Я решил эту проблему таким способом.

мой файл config.json выглядит так:

"reporterEnabled": "spec,json, mocha-junit-reporter",
  "mochaJunitReporterReporterOptions": {
    "mochaFile": "multiple-results/[hash].xml",

Просто чтобы добавить к ответу выше, если вы хотите объединить все эти несколько [hash].xmlсоздан в едином mergedreport.xmlreport, то вы можете использовать этот пакет junit-report-merger , который полезен для запуска его в конвейере CI, который обычно ищет одного репортера с помощью команды, подобной приведенной ниже:

jrm ./cypress/reports/mergedreport.xml "./cypress/reports/*.xml"

Другие вопросы по тегам