我希望 mocha 在执行所有测试后退出,以便 Istanbul 可以检查代码覆盖率,我在 package.json
中使用了 --exit
但它没有似乎不起作用。
我错过了什么吗?
"scripts": {
"test": "istanbul cover node_modules/mocha/bin/_mocha test/Testcases/ --exit"
}
所有测试文件都位于 test/Testcases/
文件夹下,mocha 应在执行完所有文件后退出
附注我使用的是 Windows 操作系统,因此我手动引用 bin 文件。
最佳答案
使用 --exit
应该可以。
顺便说一下,我使用这个,我认为在有或没有覆盖的情况下执行起来更灵活:
"scripts": {
"test": "mocha tests --timeout 4000 --reporter mochawesome --exit",
"coverage": "nyc --reporter=html --reporter=text npm run test"
}
因此,如果您运行 npm run test
,您将仅获得测试,但使用 npm runcoverage
覆盖率也会显示。
请注意,覆盖范围
遵循以下模式:
nyc + 参数 + mocha 执行
但是只使用一行,这也有效:
"test": "nyc --reporter=html --reporter=text mocha tests --timeout 4000 --reporter mochawesome --exit"
删除额外的参数:
"test": "nyc --reporter=html mocha tests --exit"
关于node.js - 测试执行后如何退出Mocha?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64280981/