伊斯坦布尔为我提供了覆盖,但以错误结束输出

Istanbul gives me coverage but ends output with an error

本文关键字:错误 结束 输出 覆盖 伊斯坦布尔      更新时间:2023-09-26

我正在测试一个简单的应用程序(来自这里的Mocha教程代码https://marcofranssen.nl/using-mocha-chai-sinon-to-test-node-js/),试图让伊斯坦布尔工作。我的问题是,伊斯坦布尔工作良好,给我一个覆盖摘要,但随后吐出一个错误的原因,我不知道为什么。我的测试都通过了,所以希望不是问题所在。下面是我运行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