我正在测试一个简单的应用程序(从此处的Mocha教程代码https://marcofranssen.nl/using-mocha-chai-sinon-to-test-node-js/),以尝试使Istanbul正常工作。我的问题是, Istanbul 尔可以很好地为我提供承保范围摘要,但是由于某种原因,然后吐出了一个错误,我不确定为什么。我的测试全部通过,所以希望它们不是问题。这是我运行 Istanbul 尔的方式:
$ istanbul cover test.js
=============================================================================
Writing coverage object [C:\Users\path\test\coverage\coverage.json]
Writing coverage reports at [C:\Users\path\test\coverage]
=============================================================================
=============================== Coverage summary ===============================
Statements : 54.55% ( 6/11 )
Branches : 100% ( 0/0 )
Functions : 0% ( 0/2 )
Lines : 54.55% ( 6/11 )
================================================================================
ReferenceError: describe is not defined
at Object.<anonymous> (C:\Users\path\test.js:9:386)
at Module._compile (module.js:435:26)
at Object.Module._extensions.(anonymous function) [as .js] (C:\Users\path
\AppData\Roaming\npm\node_modules\istanbul\lib\hook.js:107:24)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:311:12)
at Function.Module.runMain (module.js:467:10)
at runFn (C:\Users\path\AppData\Roaming\npm\node_modules\istanbul\lib\com
mand\common\run-with-cover.js:122:16)
at C:\Users\path\AppData\Roaming\npm\node_modules\istanbul\lib\command\co
mmon\run-with-cover.js:251:17
at C:\Users\path\AppData\Roaming\npm\node_modules\istanbul\lib\util\file-
matcher.js:68:16
at C:\Users\path\AppData\Roaming\npm\node_modules\istanbul\node_modules\a
sync\lib\async.js:52:16
我不太确定为什么
describe
不能被识别,因为所有测试都能正常运行并通过。 最佳答案
发现了问题: Mocha 尚未在全局安装,因此我不得不引用它:
istanbul cover /path/to/bin/_mocha path/to/test.js
关于javascript - Istanbul 尔为我提供了覆盖范围,但以错误结束输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33356347/