问题描述
我有一个开玩笑的打字稿monorepo。他们的jest.config.js
是
module.exports = {
clearMocks: true,projects: ['<rootDir>/packages/**/jest.config.js'],collectCoverage: true,coverageReporters: [
"text-summary","lcov",],preset: 'ts-jest',testEnvironment: 'node',testMatch: ['*.spec.ts','*.spec.tsx']
}
在server
包中,我使用{p>
jest.config.js
但是当我开玩笑时,它会在我的monorepo的根目录下创建const { name } = require('./package.json');
module.exports = {
displayName: name,name,'transform': {
'^.+\\.ts$': 'ts-jest'
},collectCoverageFrom: [
'<rootDir>/src/**/*.ts'
],coverageDirectory: '<rootDir>/packages/server/src/tests/coverage',}
目录。
我只是尝试使用coverage
,coverageDirectory: '<rootDir>/src/tests/coverage',
和coverageDirectory: 'src/tests/coverage',
而不成功。
我唯一可以更改coverage目录路径的方法是在monorepo的coverageDirectory: [__dirname,'src','tests','coverage'].join('/'),
上指定它,但是我无法为每个项目指定coverage目录。
有人知道如何在monorepo上为每个项目指定不同的coverage目录吗?
解决方法
仅在为每个产品单独运行时,才可以为每个项目指定不同的coverage目录。如果您使用的是全局配置(jone.config.js位于monorepo的根目录),则对它们都应用相同的coverage设置,包括coverage输出目录。