Cypress mocha-junit-reporter - 将测试文件名传递给报告器输出文件名

mjg*_*mjg 8 junit automated-tests mocha.js cypress

我正在使用 Cypress 运行一套自动化测试。
当前版本的 cypress 提供了开箱即用的 mocha-junit-reporter,并提供了传递给记者的配置选项。选项之一是“mochaFile”。
我使用推荐的 [hash] 标签跨多个规范文件输出报告。
这会导致文件看起来像“results/test-output-abc12345.xml”。

我想要的是将测试文件的相对路径和文件名作为报告器的输出文件路径传入。
这将为我提供一个结构化的、功能优先的输出视图,并且在聚合测试输出的 Azure Dev Ops 中,它将为我提供正确的文件名来检测间歇性失败的测试。

我尝试过但没有成功的事情:
我尝试使用钩子来修改 Cypress 的配置或设置环境变量以尝试reporterOptions/mochaFile在(希望)正确的时间覆盖每个测试。
我试图获取输出的默认命名的 xml 文件,并将其复制到给Cypress.spec.name定上下文的正确路径+文件名,但我似乎找不到正确的钩子或时间来执行此操作。
after并且afterEach不起作用 - 我认为测试报告尚未保存文件。

使用插件,挂钩某些事件on test:before:runtest:after:run看起来很有希望,但我很盲目,因为我无法调试它,所以我在修改报告器的输出路径或复制文件方面一直失败。

如果有人可以展示使用 mocha-junit-reporter 的工作示例,甚至是不同的 mocha 兼容报告器,如果该报告器能够很好地与 Azure Dev Ops 配合使用,并且可以帮助我发现间歇性失败的测试,我会很高兴。