angular cli排除`ng test --code-coverage`的文件/目录

Par*_*osh 14 karma-runner istanbul angular-cli angular

我正在运行以下命令进行单元测试并生成代码覆盖率报告.

ng test --code-coverage
Run Code Online (Sandbox Code Playgroud)

它工作正常并在coverage文件夹中编写代码覆盖率报告.

在这里我得到了所有文件和目录覆盖率报告

在此输入图像描述

但是我想排除特定的文件/目录src/app/quote/services/generated.怎么做?

Gre*_*reg 38

使用最新的CLI,在angular.json中

  "test": {
          "builder": "@angular-devkit/build-angular:karma",
          "options": {
            "main": "src/test.ts",
            "polyfills": "src/polyfills.ts",
            "tsConfig": "src/tsconfig.spec.json",
            "karmaConfig": "./karma.conf.js",
            "codeCoverageExclude": ["src/testing/**/*"],
Run Code Online (Sandbox Code Playgroud)


del*_*eve 20

更新的答案

angular.json已经发布.您应该能够添加下面的代码段来忽略文件.

原始答案

目前,你无法这样做codeCoverage.允许这种情况发生变化.在下一个版本(可能codeCoverageExclude)中,您将能够执行以下操作:

angular.json

"test": {
  "codeCoverageExclude": ["src/assets/vendor/**"],,
  ...
}
Run Code Online (Sandbox Code Playgroud)

  • 我正在使用 Angular 14 并且 codeCoverageExclude 停止工作 (3认同)
  • 正如 @Greg 在另一个答案中所述,“codeCoverageExclude”实际上应该位于“test.options”内部 (2认同)