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

NX与Jest无法识别所有.spec.tsx结尾测试文件问题咨询

NX中Jest测试文件匹配规则的配置位置

负责Jest识别测试文件的配置主要在两个地方,优先级从高到低:

  • 项目本地Jest配置文件:每个NX项目目录下的jest.config.ts(或.js),核心配置字段是testMatch或testRegex:

    export default {
      // 其他配置...
      testMatch: [
        '**/__tests__/**/*.[jt]s?(x)',
        '**/?(*.)+(spec|test).[tj]s?(x)' // 这条规则匹配所有.spec.tsx/.test.tsx等文件
      ],
      // 也可以用正则形式的testRegex
      testRegex: '(/__tests__/.*|(\\.|/)(test|spec))\\.[tj]sx?$'
    };
    

    只要这里的规则包含.spec.tsx后缀,Jest就能识别到你的测试文件。

  • 项目的project.json配置:在项目根目录的project.json中,test目标的options里也可以直接指定测试文件匹配规则,会覆盖Jest配置文件的对应设置:

    {
      "targets": {
        "test": {
          "executor": "@nx/jest:jest",
          "options": {
            "jestConfig": "apps/your-project/jest.config.ts",
            "testMatch": ["**/*.spec.tsx"] // 直接指定匹配所有.spec.tsx文件
          }
        }
      }
    }
    

另外,根目录的jest.preset.js是NX的全局Jest预设,一般不直接修改测试文件匹配规则,除非你要统一所有项目的规则。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.07 22:50:42