如何为 `ng test --code-coverage` 排除所有 *services.ts?
How can I exclude all *services.ts for `ng test --code-coverage`?
在我的Angular6下我是运行以下命令进行单元测试并生成代码代码覆盖率报告:
ng test --browsers=Chrome --watch=false --code-coverage
工作正常,正在覆盖文件夹中编写代码覆盖报告。
在此我得到了所有文件和目录覆盖率报告:
但我想排除特定类型的文件,比如说:
具有服务前缀的所有文件:*.service.ts
我在 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/*.service.ts"],
但这没有用
建议 ?
尝试这样的事情:
"codeCoverageExclude": [
"/**/*service*.ts"
]
在您的 Test.ts 文件中,您必须按如下方式编写:
const context = require.context('', true, /\.component.spec\.ts$/);
context.keys().map(context);
在我的Angular6下我是运行以下命令进行单元测试并生成代码代码覆盖率报告:
ng test --browsers=Chrome --watch=false --code-coverage
工作正常,正在覆盖文件夹中编写代码覆盖报告。
在此我得到了所有文件和目录覆盖率报告:
但我想排除特定类型的文件,比如说:
具有服务前缀的所有文件:*.service.ts
我在 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/*.service.ts"],
但这没有用
建议 ?
尝试这样的事情:
"codeCoverageExclude": [
"/**/*service*.ts"
]
在您的 Test.ts 文件中,您必须按如下方式编写:
const context = require.context('', true, /\.component.spec\.ts$/);
context.keys().map(context);