Javascript Node.js特定测试文件的代码覆盖率

Javascript Node.js特定测试文件的代码覆盖率,javascript,node.js,unit-testing,istanbul,blanket.js,Javascript,Node.js,Unit Testing,Istanbul,Blanket.js,我刚刚进入一个Node.js项目,该项目有大量的单元测试,不幸的是,大多数单元测试都已经过时,无法运行。没有实现任何测试运行程序或任何类型的代码覆盖率工具,重构所有内容当然不在我的工作范围之内 尽管如此,这并不能阻止我检查我工作的代码覆盖率。我查看了伊斯坦布尔和毯子,但找不到只让它们运行某些单元测试的方法。当然,有一种方法可以让我得到一个报告,很明显,报告的覆盖率很低,但是我可以深入到某些文件中,比如我的测试命中的文件中,以确保我的代码得到彻底的测试。对于伊斯坦布尔.js,您可以通过指定以下命令

我刚刚进入一个Node.js项目,该项目有大量的单元测试,不幸的是,大多数单元测试都已经过时,无法运行。没有实现任何测试运行程序或任何类型的代码覆盖率工具,重构所有内容当然不在我的工作范围之内


尽管如此,这并不能阻止我检查我工作的代码覆盖率。我查看了伊斯坦布尔和毯子,但找不到只让它们运行某些单元测试的方法。当然,有一种方法可以让我得到一个报告,很明显,报告的覆盖率很低,但是我可以深入到某些文件中,比如我的测试命中的文件中,以确保我的代码得到彻底的测试。

对于伊斯坦布尔.js,您可以通过指定以下命令来轻松获得覆盖率信息(以下示例使用mocha,但对于任何测试框架都类似):

您还可以指定特定子目录中的所有测试,例如:
test/yourfeaturetest/*.spec.js
。您还可以使用类似于
test/myfeature/***.spec.js
的内容来覆盖test/myfeature目录中的所有测试,包括可以在子目录中递归创建的测试

对于我来说,我使用gulp,因此使用gulp等插件,并通过gulp任务运行测试和覆盖

istanbul cover node_modules/.bin/_mocha -- -u exports -R spec test/test1.spec.js test/test2.spec.js