【问题标题】:IstanbulJS code coverage shows 100% line coverage but <100% statement coverageIstanbulJS 代码覆盖率显示 100% 行覆盖率但 <100% 语句覆盖率
【发布时间】:2017-07-21 01:54:51
【问题描述】:

我使用 Mocha 作为我的测试运行程序,使用 nyc 作为测试报告程序。我没有看到任何未覆盖的行,并且想知道是否有人知道如何在覆盖每一行的同时发现函数和语句。想法?

--------------------|----------|----------|----------|----------|----------------|
File                |  % Stmts | % Branch |  % Funcs |  % Lines |Uncovered Lines |
--------------------|----------|----------|----------|----------|----------------|
  file.js           |    98.77 |      100 |    88.89 |      100 |                |

【问题讨论】:

  • 你是用打字稿还是纯JS?
  • 纯 JS。它在节点版本 8 上运行。
  • 查看 HTML 报告,发现没有测试的分支。有时文本报告并不完全准确。

标签: mocha.js istanbul nyc


【解决方案1】:

Leonardo Venoso 为我指明了正确的方向。

跑步

nyc --reporter=html --reporter=text npm test

给了我一个位于 ./coverage 的文件,其中突出显示了未涵盖的确切代码。

这是一行类似于

let data = arr.sort((a,b) => a.compareTo(b));

(a,b) =&gt; a.compareTo(b) 从未被调用,因为 arr 的长度为 1。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2015-10-06
    • 1970-01-01
    • 2023-03-28
    • 2011-06-15
    • 1970-01-01
    • 2017-05-31
    • 1970-01-01
    • 2017-03-30
    相关资源
    最近更新 更多