【问题标题】:How do I change the filename of the Junit XML report that Nightwatch.js generates?如何更改 Nightwatch.js 生成的 Junit XML 报告的文件名?
【发布时间】:2021-01-13 22:07:27
【问题描述】:
我有一个 Nightwatch.js 测试套件正在运行。完成后,我使用output_folder setting 配置了输出目录。它会在该目录中正确生成 JUnit XML 文件。我有一个现有的自动化工具,它可以扫描目录中的 JUnit 测试 XML 文件并报告它们。不幸的是,它只匹配目录中具有命名方案的文件:TEST-.xml。假设我无法更改自动化工具上的匹配规则。我正在寻找一种将“TEST-”作为前缀添加到我的测试的方法。理想情况下,我可以通过配置 Nightwatch 来做到这一点。 Nightwatch 是否支持此配置?我找不到任何此类选项。
【问题讨论】:
标签:
nightwatch.js
nightwatch
【解决方案1】:
我最终更改了 package.json 中的测试脚本,以便它们在测试运行后进行重命名。这是他们以前的样子:
{
// ...
"scripts": {
"integ-tests": "<some nightwatch command>"
}
// ...
}
这是他们所追求的:
{
// ...
"scripts": {
"rename-integ-tests": "node -e \"require('fs').readdir('<my test directory>', (err, files) => { files.forEach(file => { if(file.endsWith('.xml') && ! file.startsWith('TEST-')) { fs.rename('<my test directory>' + file, '<my test directory>/TEST-' + file, function(err) { if (err) console.log(err); console.log('Renamed Smoke Test: ' + file + ' to TEST-' + file) }) } }); });\"",
"private-integ-tests": "<some nightwatch command>",
"integ-tests": "npm run private-integ-tests && npm run rename-integ-tests"
}
// ...
}