运行Jest测试时遇未知选项coverageReporters错误求解决
解决Jest配置中
coverageReporters未知选项错误 以下是针对该错误的修复建议:
1. 移除冲突的preset配置
你的配置中同时使用了ts-jest preset和@swc/jest transform,两者属于不同的TypeScript编译工具(ts-jest基于Babel,@swc/jest基于SWC),同时使用会引发配置冲突。直接移除preset: 'ts-jest'这一行,保留@swc/jest的transform配置即可。
修改后的配置片段:
const config: Config = { // 移除 preset: 'ts-jest' testEnvironment: 'jsdom', rootDir: '../', // 其余配置保持不变... };
2. 确认依赖版本兼容性
确保jest、@swc/jest、@types/jest的版本相互匹配:
@swc/jestv0.2.x 对应 Jest v29@swc/jestv0.1.x 对应 Jest v28
查看package.json中的版本号,调整至匹配版本后重新安装依赖:
npm install # 或 yarn install
3. 验证配置项拼写
确认coverageReporters的拼写正确(注意末尾的s),避免误写成单数形式coverageReporter。你的当前配置拼写无误,但可再次核对。
4. 检查配置加载方式
如果使用jest.config.ts作为配置文件,需确保已安装ts-node或@swc-node/register,让Node.js能解析TypeScript配置文件:
npm install -D ts-node # 或 yarn add -D ts-node
完成以上步骤后重新运行Jest测试,即可解决Unknown option "coverageReporters"错误。
内容的提问来源于stack exchange,提问作者sunpietro
相关产品推荐
相关产品推荐

