ES6 React istanbul 未收集覆盖信息,不写入覆盖信息退出
ES6 React istanbul No coverage information was collected, exit without writing coverage information
我有一个问题 运行 我的测试代码覆盖率不起作用,我收到消息
No coverage information was collected, exit without writing coverage information
我使用 ES6 编写测试,并使用 babel 转换代码。
为了解决这个问题,我使用了本次讨论中提供的 github 项目:https://github.com/gotwarlost/istanbul/issues/496
诀窍是使用
`babel-node ./node_modules/istanbul/lib/cli cover node_modules/mocha/bin/_mocha -- --require test-helper.js --bail --recursive 'src/js/__tests__/**/*.test.js'`
而不是
"istanbul cover node_modules/mocha/bin/_mocha -- --compilers js:babel-core/register --require scripts/test-helper.js --recursive 'src/js/__tests__/**/*.test.js'"
它运行良好,但问题是代码覆盖率只考虑了您测试过的 classes,而不是您创建的所有 classes。
如果我在项目的 src
文件夹中添加一个新的 class mod.js
,app.js
组件的覆盖率为 100%。这是合乎逻辑的,因为它已经过全面测试,但在报告中 mod.js
class 未出现在报告中 - 它未列为 class,测试率为 0%(https://github.com/JakeSidSmith/istanbul-no-coverage).
我尝试添加 cover -x 'src/js/__tests__/**/*.test.js'
但没有成功。我不能将第一种风格与第二种风格混在一起。
另一个问题是,在上面提供的项目示例中,test-helper.js 被认为是经过全面测试的,我无法使用 cover -x
将其排除在覆盖范围之外。
是否有另一个技巧可以使用 ES6/mocha 和 mocha 调用 babel-core/register
来获得正确的代码覆盖率?
我也遇到了同样的问题,但是这个 github issue 指导得很好。我希望你能使用 use istanbul@1.0.0-alpha.2
来解决我的问题。
我的命令是这样的istanbul cover --dir ./coverage _mocha -- ./tests/**/**/*.js --opts ./tests/mocha.opts -R spec
我有一个问题 运行 我的测试代码覆盖率不起作用,我收到消息
No coverage information was collected, exit without writing coverage information
我使用 ES6 编写测试,并使用 babel 转换代码。
为了解决这个问题,我使用了本次讨论中提供的 github 项目:https://github.com/gotwarlost/istanbul/issues/496
诀窍是使用
`babel-node ./node_modules/istanbul/lib/cli cover node_modules/mocha/bin/_mocha -- --require test-helper.js --bail --recursive 'src/js/__tests__/**/*.test.js'`
而不是
"istanbul cover node_modules/mocha/bin/_mocha -- --compilers js:babel-core/register --require scripts/test-helper.js --recursive 'src/js/__tests__/**/*.test.js'"
它运行良好,但问题是代码覆盖率只考虑了您测试过的 classes,而不是您创建的所有 classes。
如果我在项目的 src
文件夹中添加一个新的 class mod.js
,app.js
组件的覆盖率为 100%。这是合乎逻辑的,因为它已经过全面测试,但在报告中 mod.js
class 未出现在报告中 - 它未列为 class,测试率为 0%(https://github.com/JakeSidSmith/istanbul-no-coverage).
我尝试添加 cover -x 'src/js/__tests__/**/*.test.js'
但没有成功。我不能将第一种风格与第二种风格混在一起。
另一个问题是,在上面提供的项目示例中,test-helper.js 被认为是经过全面测试的,我无法使用 cover -x
将其排除在覆盖范围之外。
是否有另一个技巧可以使用 ES6/mocha 和 mocha 调用 babel-core/register
来获得正确的代码覆盖率?
我也遇到了同样的问题,但是这个 github issue 指导得很好。我希望你能使用 use istanbul@1.0.0-alpha.2
来解决我的问题。
我的命令是这样的istanbul cover --dir ./coverage _mocha -- ./tests/**/**/*.js --opts ./tests/mocha.opts -R spec