Nur*_*ihu 3 jscoverage istanbul
请问有谁能解决这个问题吗?我有我的测试:覆盖范围定义如下.
scripts{
"test:coverage": "babel-node ./node_modules/.bin/istanbul cover ./node_modules/.bin/_mocha ./src/_utils/__tests__/*.js"
}
Run Code Online (Sandbox Code Playgroud)
当我跑
npm run test:coverage
Run Code Online (Sandbox Code Playgroud)
我的摩卡运行良好,其他一切都好.但我的伊斯坦布尔报道最后会在标题中返回消息.此外,我的coverage文件夹仍为空.通过在线阅读后,我确信我必须添加.istanbul.yml文件.然后我继续并在下面添加它
verbose: false
instrumentation:
root: ./node_modules/.bin/istanbul
default-excludes: true
excludes: []
embed-source: false
variable: __coverage__
compact: true
preserve-comments: false
complete-copy: false
save-baseline: false
baseline-file: ./coverage/coverage-baseline.json
reporting:
print: summary
reports:
- lcov
dir: ./coverage
watermarks:
statements: [50, 80]
lines: [50, 80]
functions: [50, 80]
branches: [50, 80]
hooks:
hook-run-in-context: false
post-require-hook: null
Run Code Online (Sandbox Code Playgroud)
在我运行测试后:再次覆盖,之前的伊斯坦布尔错误消失了.但是,标题中的无覆盖消息仍然存在,并且更多覆盖文件夹仍然为空.请问我哪里出错了?任何帮助,将不胜感激.
如果您遇到类似的问题,请知道问题出在伊斯坦布尔本身.你需要安装babel-istanbul而不是伊斯坦布尔.我的报道:文字现在如下.
"test:coverage": "babel-node ./node_modules/.bin/babel-istanbul cover ./node_modules/.bin/_mocha ./src/**/__tests__/*.js",
Run Code Online (Sandbox Code Playgroud)
记住和摆脱.istanbul.yml文件也很重要.而是将你的src改为babel-istanbul.我删除了我的.istanbul.yml文件并安装babel-istanbul.它的工作正常.
注意:默认情况下,伊斯坦布尔不包括一些文件夹,例如test,tests和node_modules。如果将脚本放在具有该名称的文件夹中,则应使用--no-default-excludes,-i include-pattern和-x exclude-pattern来管理要包括或排除的文件夹。
例:
istanbul cover --no-default-excludes --report=text -x '**/node_modules/**' _mocha test/*
| 归档时间: |
|
| 查看次数: |
4679 次 |
| 最近记录: |