业力配置以排除嵌套目录

Posted

技术标签:

【中文标题】业力配置以排除嵌套目录【英文标题】:Karma config to exclude nested directories 【发布时间】:2017-06-25 15:09:10 【问题描述】:

我正在使用 karma 对我的 Angular 2 应用程序进行单元测试。我有以下目录结构-

└── src/
    ├── index.js
    ├── index.js.text
    ├── index.test.js
    ├── README.txt
    ├── startuptest.js
    ├── lib/
    |   ├── util.js
    |   ├── util.test.js
    |   └── filters/
    |       ├── kalman.js
    |       └── lowpass.js
    ├── test/
    |   ├── main.js
    |   └── lib/
    |       ├── filters.js
    |       └── util.js
    └── vendor/
        ├── jquery.js
        └── three/
            ├── three.js
            └── three.fps.js

我想排除我的所有文件

src/lib/!(filters)/**

来自报道。但我想保留目录其余部分中的所有文件

我试过了,

src/**, src/lib/!(filters)/**/!(*.spec!).js : coverage 

但它正在跳过所有内容。

如何做到这一点?

参考 - https://github.com/karma-runner/karma/issues/508

【问题讨论】:

src,src/!(lib/filters)/**/*.js : coverage 怎么样?或src,src/!(lib/filters)/**/!(*test).js 也排除带有“test”后缀的文件 那不行。不幸的是( 【参考方案1】:

有几件事可以尝试:

src/*/!(lib/filters)/**/!(*.spec!).js : coverage

如果这不起作用,请将 coveragePreprocessor 添加到您的 karma 配置中。

coveragePreprocessor: 
    exclude: [ "**/lib/filters/*.js" ]

【讨论】:

我预计您的业力配置中可能还有另一个问题。您能否将整个问题添加到问题中。

以上是关于业力配置以排除嵌套目录的主要内容,如果未能解决你的问题,请参考以下文章

如何从业力代码覆盖率报告中排除文件?

有没有办法从业力覆盖文本报告器结果中排除所有 100% 或阈值的文件?

如何使用 isparta 从业力的代码覆盖范围中排除第三方导入(如 jquery)?

角度业力 - NullInjectorError:InjectionToken 配置没有提供者

如何配置 playwright-jest 以排除测试套件(规范)文件以进行运行?

为啥 Angular 8 CircleCI 构建在执行 ng test --watch-false 时失败,业力配置为 singleRun=true?