微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

node.js – 如何使用Node,Mocha获取代码覆盖率信息

在Mocha的帮助下,我最近已经开始对我的Node项目进行单元测试了。事情发展到目前为止,我已经发现,我的代码已经大大改善,现在我正在考虑在我的测试中涵盖的所有角度。

现在,我想与我的团队的其他成员分享我的经验,并通过自己的测试让他们去。我想分享的部分信息是我的代码实际覆盖了多少。

以下是我应用程序结构的示例,我将其分为不同的组件或模块。为了促进重用,我试图将所有依赖关系保持在最低限度,并与组件文件夹隔离。这包括将测试隔离,而不是项目根目录中的认测试/文件夹。

| app/
| - component/
| -- index.js
| -- test/
| ---- index.js

目前我的package.json看起来像这样。我正在和Istanbul玩耍,但我绝对没有把握。我也尝试使用Blanket类似的成功。

{
  "scripts": {
    "test": "clear && mocha app/ app/**/test/*.js","test-cov": "clear && istanbul cover npm test"
}

如果我运行我的test-cov命令,我从伊斯坦布尔得到以下错误(这是没有帮助的):

No coverage information was collected,exit without writing coverage information

所以我的问题是这样的:鉴于我目前的应用程序结构和环境,如何使用伊斯坦布尔(或另一个工具)正确地报告我的代码覆盖率?

TL; DR

如何使用Node,Mocha和我当前的应用程序结构来报告我的代码覆盖?

编辑

要清楚,摩卡在当前状态下正常运行测试。获取代码覆盖率报告是我正在努力工作的努力。

编辑2

我收到another question可能已经回答了我的问题的通知。它只建议安装伊斯坦布尔并运行我已经完成的命令。另一个建议建议使用_mocha运行测试命令,从我所做的一些研究是为了防止伊斯坦布尔吞下摩卡的标志,在新版本的摩卡中不是必需的。

解决方法

你应该尝试这样运行你的测试:

istanbul cover _mocha test/**/*.js

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐