3

我正在使用“Istanbul cover test.js”运行一些节点 js 单元测试,其中 test.js 是主测试文件,它将调用我们代码库中的实际脚本。问题是它生成的覆盖率报告仅在 test.js 文件上,而不是在代码库中的实际代码行上。如果这是一个愚蠢的问题,请原谅我,但我如何让它显示测试引用的实际文件的覆盖率?

4

3 回答 3

7

您必须istanbul cover针对正在运行的测试运行。文档中的示例对此有点不清楚:istanbul cover test.js假设这是运行所有测试test.js可执行文件,而不是测试本身。

例如,如果您mocha用作测试运行程序,它应该看起来像istanbul cover node_modules/.bin/_mocha(假设 mocha 作为本地 devDependency 安装)或者istanbul cover mocha,如果它作为全局模块安装。

于 2014-02-13T06:58:58.613 回答
1

在 Windows 上:

如果你全局安装了 jasmine-node:

istanbul cover /d/Users/rxxx/AppData/Roaming/npm/node_modules/jasmine-node/bin/jasmine-node ./

如果您在本地安装了 jasmine-node:

istanbul cover ../node_modules/jasmine-node/bin/jasmine-node ./
于 2014-11-25T06:17:54.563 回答
0

在我的情况下,以下命令在作为定义的脚本运行时起作用package.json

istanbul cover ../jasmine/bin/jasmine.js

于 2015-08-25T22:44:56.677 回答