我可以使用什么javascript解析器在JavaScript中为节点重新实现jsCoverage?

时间:2012-07-21 08:00:55

标签: javascript node.js code-coverage

我非常喜欢node.js中代码的代码覆盖率报告。 我已经创建了一个node.js模块,它可以注入一个名为requiremock的检测代码(并模拟我们的require语句)

我在我的其他模块nodecoverage中使用它与jsCoverage(windows)的二进制版本一起生成代码覆盖率报告,使用requiremock注入已检测的代码版本。

使用jsCoverage的问题是

  1. 它需要为平台编译,因为它是用C(++)编写的,我想用JavaScript实现它,所以它可以在没有编译的任何平台上使用。
  2. 它将已检测的代码版本作为文件写入磁盘。使用requiremock,我可以在内存中生成已检测的JavaScript文件,并在需要原始文件时运行它们。
  3. jsCoverage在使用函数提升时没有正确报告代码覆盖率,我在node.js中使用了很多。
  4. 所以我的问题是:

    我应该选择用JavaScript编写的JavaScript解析器重新实现jsCoverage作为node.js模块吗?

    我必须能够知道原始文件中代码的编号,并且还知道什么是whitespacing。

1 个答案:

答案 0 :(得分:2)

试试esprima。这很棒。此外node-cover可能已经拥有您需要的内容