使用 mocha 生成 istanbul/nyc 覆盖率报告

Generating istanbul/nyc coverage reports with mocha

我正在尝试为我的项目生成一份 nyc/istanbul 覆盖率报告(使用 mocha)。我可以使用以下命令从命令行将其设置为 运行:

npm test --reporter mocha-bamboo-reporter test/

本质上是运行宁

nyc mocha --recursive "mocha-bamboo-reporter" "test/"

棘手的部分是我需要在 bamboo 中 运行 这似乎不支持在一项任务中链接 of/multiple 命令。

我的 bamboo 配置有一个 mocha 测试 运行ner:

node_modules/mocha/bin/mocha --reporter mocha-bamboo-reporter --recursive

我有一个istanbul/nyc仪器任务:

./node_modules/nyc/bin/nyc.js instrument test/ .nyc_output

然后是覆盖率报告任务:

./node_modules/nyc/bin/nyc.js report

当这个 运行s 我在报告文件中没有数据:

25-Apr-2018 14:27:28    ----------|----------|----------|----------|----------|-------------------|
25-Apr-2018 14:27:28    File      |  % Stmts | % Branch |  % Funcs |  % Lines | Uncovered Line #s |
25-Apr-2018 14:27:28    ----------|----------|----------|----------|----------|-------------------|
25-Apr-2018 14:27:28    All files |        0 |        0 |        0 |        0 |                   |
25-Apr-2018 14:27:28    ----------|----------|----------|----------|----------|-------------------|

如有任何帮助,我们将不胜感激。

想通了。最好的方法是在我的 package.json 文件中创建一个自定义脚本,然后从 Bamboo 中调用它。

package.json

"scripts": {
    "test-ci": "nyc -a --reporter=clover mocha --recursive --reporter mocha-bamboo-reporter"

竹 - Node.js任务

run-script test-ci