我目前正在研究Angular 6.0的单元测试。我正在使用捆绑了一个新的Angular项目的Karma和Jasmine来运行测试。测试运行正常,但是每次测试运行后浏览器都会自动关闭,这意味着任何失败的测试几乎都无法调试。
我尝试过使用配置,但没有成功。我很确定没有任何东西覆盖配置,我知道使用了这种配置(例如在修改浏览器阵列后,我现在有多个浏览器启动)。
我通过运行'ng test'命令执行测试。试图执行'业力开始'似乎不起作用 - 不确定这是否相关。
这是karma.conf.js:
module.exports = function (config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular-devkit/build-angular'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-edge-launcher'),
require('karma-firefox-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-coverage-istanbul-reporter'),
require('@angular-devkit/build-angular/plugins/karma')
],
client: {
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
coverageIstanbulReporter: {
dir: require('path').join(__dirname, '../coverage'),
reports: ['html', 'lcovonly'],
fixWebpackSourcePaths: true
},
reporters: ['progress', 'kjhtml'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome', 'Firefox', 'Edge'],
singleRun: false
});
};
'singleRun'似乎与autoWatch无关。