我正在研究具有以下结构的monorepo:
- package.json
- jest.config.js
- packages
- dir_a
- jest.config.js
- src
- component/custompages
- __tests__
- page1.test.js
- page2.test.js
- page1.js
- page2.js
- dir_b
这就是我在<rootDir>/jest.config.js
中给出的内容。
module.exports = {
projects: ['<rootDir>/packages/*'],
collectCoverage: true,
collectCoverageFrom: [
"**/packages/**/*.{js,jsx}",
'!**/node_modules/**'
]
}
但是在运行测试和覆盖范围时,它会说:
----------|----------|----------|----------|----------|-------------------|
File | % Stmts | % Branch | % Funcs | % Lines | Uncovered Line #s |
----------|----------|----------|----------|----------|-------------------|
All files | Unknown | Unknown | Unknown | Unknown | |
----------|----------|----------|----------|----------|-------------------|
有趣的是,如果我从collectCoverageFrom
删除了jest.config.js
键,它将运行package
目录下第一个文件夹中所有文件的覆盖范围。我不想走那条路线,因为它也可以覆盖constants
文件。
为什么Coverage无法按照路径"**/packages/**/*.{js,jsx}",
中指定的方式提取文件。我尝试了"packages/**/*.{js,jsx}"
,但这也不起作用。实际上,如果我给出了文件的确切路径,则它不会运行它:-/。