我正在尝试为不同的浏览器实现mochawesome报告的动态路径例如,对于chrome,它应该是cypry/reports/chrome/mocha
这是我为报表配置的cypry.json
"reporter": "cypress-multi-reporters",
"reporterOptions": {
"reporterEnabled": "mochawesome",
"mochawesomeReporterOptions": {
"quiet": true,
"overwrite": false,
"html": false,
"json": true
}
},
这就是我尝试使用自定义reporterDir 运行测试的方式
"cypress run --spec cypress\integration\filter\*.js --browser chrome --headless --config-file config.json --config videosFolder=cypress\videos\chrome downloadsFolder=cypress\downloads\chrome --reporter mochawesome --reporter-options reportDir=cypress/reports/chrome/mocha"
但它不起作用。报告保存在cypress.json的路径下。我尝试了很多次不同的语法,但就是无法使其工作。我需要它,因为我的测试将在许多浏览器上启动,我想让报表目录组织良好。
我最终得到了https://www.npmjs.com/package/@bahmutov/cypr-extends-负责扩展cypry配置文件的插件,所以我为每个浏览器创建了一个,每个浏览器都有自己的报告、视频和下载路径,现在我正在启动类似"cypress run --spec cypress\integration\*.js --browser chrome --config-file config_BROWSER.json"
的脚本。我也删除了多记者插件,因为我意识到我不需要它
Cypress.json
"reporter": "mochawesome",
"reporterOptions": {
"quiet": true,
"overwrite": false,
"html": false,
"json": true,
}
config_chrome.json
{
"extends": "./cypress.json",
"reporter": "mochawesome",
"reporterOptions": {
"reportDir": "cypress/reports/chrome/mocha"
},
"videosFolder": "cypress/videos/chrome",
"downloadsFolder": "cypress/downloads/chrome"}
然后是config_edge.json和config_firefox.json-类似于chrome,但路径不同