23
有没有一种方法可以从代码覆盖率报告中为业障报道跑步者https://github.com/karma-runner/karma-coverage排除文件?如何从业力代码覆盖报告中排除文件?
有没有一种方法可以从代码覆盖率报告中为业障报道跑步者https://github.com/karma-runner/karma-coverage排除文件?如何从业力代码覆盖报告中排除文件?
您可以在这里使用几种技术:karma使用minimatch globes作为文件路径,并且使用可以利用它来排除某些路径。
作为第一个解决方案我想说尝试将文件的唯一路径与覆盖范围添加到预处理:
// karma.conf.js
module.exports = function(config) {
config.set({
files: [
'src/**/*.js',
'test/**/*.js'
],
// coverage reporter generates the coverage
reporters: ['progress', 'coverage'],
preprocessors: {
// source files, that you wanna generate coverage for
// do not include tests or libraries
// (these files will be instrumented by Istanbul)
'src/**/*.js': ['coverage']
},
// optionally, configure the reporter
coverageReporter: {
type : 'html',
dir : 'coverage/'
}
});
};
上面的一个是因果报应覆盖默认的例子,它表明,只有那些src
文件夹中的文件将被预处理。
另一个技巧可以使用!
操作,以排除特定路径:
preprocessors: {
// source files, that you wanna generate coverage for
// do not include tests or libraries
'src/**/!(*spec|*mock).js': ['coverage']
},
的一个上面,使覆盖范围来看,只有对那些不以spec.js
或mock.js
结束JavaScript文件。同理也可应用于文件夹来完成:
preprocessors: {
// source files, that you wanna generate coverage for
// do not include tests or libraries
'src/**/!(spec|mock)/*.js': ['coverage']
},
不处理在spec
或mock
夹中的任何JavaScript文件。
是的,这正是我所需要的,感谢您的帮助。 – 2015-03-22 00:29:16
提示:如果它们位于src/spec和src/mock文件夹中,则将排除所有spec和mock文件夹,然后使用如下所示:''src /!(spec | mock)/ **/*。js': [ '覆盖']' – 2015-09-09 13:47:09