使用 jest 15.1.1 的代码覆盖率 "Unknown"
Code coverage "Unknown" using jest 15.1.1
当我尝试包含所有项目源代码以获得更合理的代码覆盖率数字时,我最终得到
----------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
----------|----------|----------|----------|----------|----------------|
All files | Unknown | Unknown | Unknown | Unknown | |
----------|----------|----------|----------|----------|----------------|
我的配置包含以下内容:
"collectCoverageFrom": [
"<rootDir>/app_modules/",
"<rootDir>/src/"
],
我也试过不带尾随 /
、带 **/*.js
和只带尾随 *.js
都无济于事。
基于 --debug
选项,路径扩展到我想从中收集覆盖信息的路径(不是问题)
那么获得更准确的覆盖信息的魔力是什么?
我能找到的最好的文档来自这个 Github PR:https://github.com/facebook/jest/pull/1349/files
我最后做了:
"collectCoverageFrom": [
"**/*.js",
"!webpack.config.js"
],
之所以有效,是因为这是默认配置的一部分
"testPathIgnorePatterns": [
"/node_modules/"
],
虽然它确实增加了大量的测试时间运行。
仔细看看你的link:
collectCoverageFrom: {
description: wrap(
'relative to <rootDir> glob pattern matching the files that coverage ' +
'info needs to be collected from.'
...
您不能使用 <rootDir>
。尝试:
collectCoverageFrom: [
"**/app_modules/**",
"**/src/**"
],
这只是要添加到您编辑的问题中的其他信息:而不是声明第二个数组:
"testPathIgnorePatterns": [
"/node_modules/"
],
您可以继续使用您的 collectCoverageFrom
数组,方法是将 !
添加到您不想收集覆盖信息的目录:
collectCoverageFrom: [
"!**/node_modules/**"
],
您可以使用选项 forceCoverageMatch 强制取消覆盖:['/.ts','/.js']
当我尝试包含所有项目源代码以获得更合理的代码覆盖率数字时,我最终得到
----------|----------|----------|----------|----------|----------------|
File | % Stmts | % Branch | % Funcs | % Lines |Uncovered Lines |
----------|----------|----------|----------|----------|----------------|
All files | Unknown | Unknown | Unknown | Unknown | |
----------|----------|----------|----------|----------|----------------|
我的配置包含以下内容:
"collectCoverageFrom": [
"<rootDir>/app_modules/",
"<rootDir>/src/"
],
我也试过不带尾随 /
、带 **/*.js
和只带尾随 *.js
都无济于事。
基于 --debug
选项,路径扩展到我想从中收集覆盖信息的路径(不是问题)
那么获得更准确的覆盖信息的魔力是什么?
我能找到的最好的文档来自这个 Github PR:https://github.com/facebook/jest/pull/1349/files
我最后做了:
"collectCoverageFrom": [
"**/*.js",
"!webpack.config.js"
],
之所以有效,是因为这是默认配置的一部分
"testPathIgnorePatterns": [
"/node_modules/"
],
虽然它确实增加了大量的测试时间运行。
仔细看看你的link:
collectCoverageFrom: {
description: wrap(
'relative to <rootDir> glob pattern matching the files that coverage ' +
'info needs to be collected from.'
...
您不能使用 <rootDir>
。尝试:
collectCoverageFrom: [
"**/app_modules/**",
"**/src/**"
],
这只是要添加到您编辑的问题中的其他信息:而不是声明第二个数组:
"testPathIgnorePatterns": [
"/node_modules/"
],
您可以继续使用您的 collectCoverageFrom
数组,方法是将 !
添加到您不想收集覆盖信息的目录:
collectCoverageFrom: [
"!**/node_modules/**"
],
您可以使用选项 forceCoverageMatch 强制取消覆盖:['/.ts','/.js']