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

如何在Jest测试报告中排除覆盖率为0%的文件?

解决Jest统计TypeScript覆盖率时忽略指定文件的方法

以下几种方式可以帮你排除那些不想纳入覆盖率统计的文件:

  • 通过配置文件忽略指定路径
    在你的jest.config.ts(或jest.config.js)中添加coveragePathIgnorePatterns选项,直接指定要排除的文件/目录匹配规则:

    export default {
      // 其他配置...
      coveragePathIgnorePatterns: [
        "/node_modules/",
        "\\.d\\.ts$", // 忽略类型定义文件
        "src/utils/legacy/", // 忽略某个目录下的所有文件
        "src/constants/config.ts" // 忽略单个文件
      ]
    };
    

    这里的匹配规则采用正则表达式,可根据项目文件结构灵活调整。

  • 精确指定需要统计覆盖率的文件
    反过来,用collectCoverageFrom配置只包含你想要统计的文件,未被包含的文件自然不会出现在覆盖率报告里:

    export default {
      // 其他配置...
      collectCoverageFrom: [
        "src/**/*.ts", // 包含src下所有ts文件
        "!src/**/*.d.ts", // 排除类型定义文件
        "!src/utils/legacy/**/*", // 排除legacy目录下所有文件
        "!src/**/*mock*.ts" // 排除所有mock文件
      ]
    };
    
  • 命令行临时忽略
    如果只是临时需要排除某些文件,无需修改配置文件,可以在运行jest时添加--coveragePathIgnorePatterns参数:

    jest --coverage --coveragePathIgnorePatterns="src/utils/legacy/*" --coveragePathIgnorePatterns="\\.d\\.ts$"
    

注意:配置中的路径匹配要和项目文件结构对应,确保正则表达式能准确匹配到目标文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.14 18:37:34