You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

多线程Cypress并行执行生成多份Mochawesome报告合并方案咨询

合并Cypress Parallel多线程生成的Mochawesome报告方案

当使用cypress-parallel以多线程执行Cypress测试时,每个线程会生成独立的Mochawesome报告,要合并为单一报告,可通过以下步骤实现:

1. 安装必要依赖

需要用到两个工具:mochawesome-merge用于合并各线程生成的报告JSON文件,mochawesome-report-generator用于基于合并后的JSON生成最终的HTML报告。执行以下命令安装:

npm install mochawesome-merge mochawesome-report-generator --save-dev

2. 确认报告配置

检查你的reporter-config.json,确保cypressMochawesomeReporterReporterOptions中的overwrite设置为false(你的配置已满足),这样每个线程的报告不会被覆盖,会生成带序号后缀的JSON文件(如mochawesome_001.json、mochawesome_002.json)。

当前配置示例:

{
  "reporterEnabled": "mocha-junit-reporter, mochawesome, cypress-mochawesome-reporter",
  "mochaJunitReporterReporterOptions": {
    "mochaFile": "cypress/reports/junit_cypress-[hash].xml",
    "toConsole": false
  },
  "cypressMochawesomeReporterReporterOptions": {
    "reportDir": "cypress/reports/mochaReport",
    "reportFilename": "AutoTest",
    "reportPageTitle": "Regression",
    "reportTitle": "AutoTests",
    "embeddedScreenshots": true,
    "overwrite": false,
    "showPending": false,
    "showSkipped": true,
    "inlineAssets": true,
    "charts": true
  }
}

3. 添加合并与生成报告的命令

在项目的package.json中添加两个新命令,与已有的并行测试命令配合:

"scripts": {
  "cy:run:parallel": "cypress-parallel -s cy:run -t 3 -d 'cypress/e2e/ui/' -r 'cypress-mochawesome-reporter' -o 'cypressParallel=true' -p 'reporter-config.json' --strictMode false",
  "merge-reports": "mochawesome-merge cypress/reports/mochaReport/mochawesome_*.json > cypress/reports/mochaReport/combined-report.json",
  "generate-final-report": "marge cypress/reports/mochaReport/combined-report.json -o cypress/reports/mochaReport/final -t '合并后的自动化测试报告'"
}

4. 执行流程

按顺序执行以下命令:

  1. 运行并行测试生成多份报告:
npm run cy:run:parallel
  1. 合并所有线程的报告JSON文件:
npm run merge-reports
  1. 基于合并后的JSON生成最终的HTML报告:
npm run generate-final-report

也可以将三个命令串联,一次性完成:

npm run cy:run:parallel && npm run merge-reports && npm run generate-final-report

额外说明

  • 若你的报告JSON文件路径与示例不同,需调整merge-reports命令中的文件匹配路径,确保能覆盖所有线程生成的JSON报告。
  • marge是mochawesome-report-generator的简写命令,也可使用全称mochawesome-report-generator。
  • 当前配置中reporterEnabled同时包含mochawesome和cypress-mochawesome-reporter,会生成重复的报告文件,可考虑移除mochawesome以优化。

内容的提问来源于stack exchange,提问作者Abhiram S L

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 01:18:29