You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Jest配置中testMatch选项无法匹配测试文件的问题求助

解决Windows环境下Jest testMatch无法匹配测试文件的问题

问题根源

你的testMatch配置['/**/*.test.(ts|tsx)']会从系统根目录(比如C:\)开始递归查找文件,而非你的项目根目录,这直接导致Jest找不到项目内的测试文件。另外手动转义路径分隔符的做法完全没必要,Jest的glob解析器会自动处理跨平台的路径分隔符差异。

修复方案

修改jest.config.js中的testMatch配置,添加<rootDir>前缀,限定在项目根目录范围内搜索:

module.exports = {
  preset: 'ts-jest',
  testEnvironment: 'node',
  roots: ['<rootDir>'],
  moduleDirectories: ['node_modules', 'server'],
  globals: {
    'ts-jest': {
      tsconfig: './tsconfig.test.json',
    },
  },
  watchPathIgnorePatterns: ['/node_modules'],
  moduleFileExtensions: ['ts', 'tsx', 'js', 'jsx'],
  // 修复后的testMatch配置
  testMatch: ['<rootDir>/**/*.test.(ts|tsx)'],
  globalSetup: './global-setup.js',
};

额外排查项

如果修改后仍无法匹配测试文件,可以检查以下内容:

  • 确认测试文件命名严格遵循xxx.test.ts或xxx.test.tsx格式,无拼写错误
  • 执行jest --listTests命令,查看Jest当前匹配到的测试文件列表,验证路径规则是否生效
  • 检查testPathIgnorePatterns是否意外排除了测试文件所在目录(当前配置仅排除node_modules,无异常)

内容的提问来源于stack exchange,提问作者jait

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.13 00:15:30