我正在使用Karma进行一些单元测试并生成代码覆盖率统计信息。 当我从命令行运行测试而没有karma配置中的代码覆盖设置时,我可以在命令行中看到测试结果。即
Executed 3 of 3 SUCCESS (0.465 secs / 0.048 secs)
当我将代码覆盖率设置添加到配置并运行测试时,会生成覆盖文件但我在命令行中看不到测试结果。
我的配置是:
basePath = '../';
files = [
JASMINE,
JASMINE_ADAPTER,
'https://ajax.googleapis.com/ajax/libs/angularjs/1.0.1/angular.min.js',
'app/lib/angular/angular.js',
'app/lib/angular/angular-scenario.js',
'test/lib/angular/angular-mocks.js',
'app.js', // include app first as other module hang off it
'public/javascript/**/*.js',
'test/unit/**/*.js'
];
/* code coverage settings */
preprocessors = {
'**/public/javascript/**/*.js': 'coverage'
};
reporters = ['coverage'];
/* end code coverage settings */
autoWatch = true;
browsers = ['Chrome'];
junitReporter = {
outputFile: 'test_out/unit.xml',
suite: 'unit'
};
我可以创建单独的脚本来生成代码覆盖率并运行测试,我在速度等方面做得更好,但我想知道我是否可以一起完成它们,如果有的话我会想念配置了什么?
答案 0 :(得分:4)
当您在配置中添加“coverage”报告时,您似乎删除了以前默认存在的“进度”记者。
只需将配置的记者部分更改为:reporters = ['coverage','progress']
而不是reporters = ['coverage']