angular cli exclude files/directory for `ng test --code-coverage`

angular cli exclude files/directory for `ng test --code-coverage`

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

ng test --code-coverage

工作正常,正在 coverage 文件夹中编写代码覆盖率报告。

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

但我想排除特定的 files/directory 让我们说 src/app/quote/services/generated。怎么做?

2019 年 9 月更新

使用 Angular CLI 6,angular-cli.json 已重命名为包含配置的 angular.json。在 angular.json 中,codeCoverage 需要一个布尔值,它设置是否应该对每个测试 运行 进行代码覆盖。要从代码覆盖范围中排除文件,有一个 属性 codeCoverageExclude 接受要从代码覆盖范围中排除的文件数组。

angular.json

"test": {
  "codeCoverageExclude": ["src/assets/vendor/**"],,
  ...
}

更新答案

rc.0 已发布。您应该能够添加下面的代码片段来忽略文件。

原回答

目前,您无法在 beta.32.3 中执行此操作。一种改变即将到来,以允许这种情况发生。在下一个版本中(可能 rc.0),您将能够执行以下操作:

.angular-cli.json

"test": {
  "codeCoverage": {
    "exclude": [
      "src/app/quote/services/generated/**/*"
    ]
  },
  ...
}

使用最新的 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/**/*"],