在使用 karma-coverage 插件运行时,我目前遇到了 Karma (0.12.31) 的问题。
执行 Karma,没有覆盖,几秒钟后测试开始运行。如果我使用 karma-coverage 插件执行 karma,将花费更多时间。我知道报道可能需要更多时间,但我认为时间量是荒谬的。
使用 karma-coverage 我收到消息“karma chrome 在 60000 毫秒内没有捕获,正在杀死”,然后 karma 杀死了 Chrome(我使用的是 43.0.2357.132)。5 分钟后,一个新的 Chrome 窗口打开,几秒钟后测试终于执行。
我的配置是否正确并且必须等待那么长时间是“正常的”?我们谈论的是 4000 次测试,尽管我只运行了这 4000 次中的 12 次。
这是我的 karma.conf.js 文件:
module.exports = function(config){
config.set({
browserNoActivityTimeout: 60000,
basePath : '../',
preprocessors: {
'templates/*.tmpl.html': ['ng-html2js'],
'scripts/**/**/*.js': ['coverage']
},
files: [
{pattern: 'Styles/images/*.png', included: false, served: true},
'scripts/vendor/jquery-1.11.1.min.js',
'scripts/vendor/angular.js',
'tests/unit/angular-mocks.js',
'scripts/vendor/jquery.signalR-2.1.2.min.js',
'scripts/vendor/breeze.debug.js',
'scripts/vendor/go-debug.js',
'scripts/vendor/jqx-all.js',
'templates/*.tmpl.html',
'scripts/app.js',
'scripts/**/**/*.js',
'tests/unit/modelMetadata.js',
'tests/unit/solutionMetadata.js',
'tests/unit/testUtils/*.js',
'tests/unit/**/**/*.js'
],
proxies: {
'/styles': 'http://localhost:9876/styles/images',
'/scripts': 'http://localhost:9876/scripts/modules/ironPython'
},
autoWatch : true,
frameworks: ['jasmine'],
browsers : ['Chrome'/*, 'IE'*/], //, 'Firefox'
plugins : [
'karma-coverage',
'karma-chrome-launcher',
//'karma-firefox-launcher',
//'karma-ie-launcher',
'karma-jasmine',
//'karma-teamcity-reporter',
'karma-ng-html2js-preprocessor'
],
reporters: ['progress', 'coverage'],
ngHtml2JsPreprocessor: {
moduleName: 'templates'
},
coverageReporter: {
type : 'html',
// where to store the report
dir : 'coverage/'
}
});
};