Я тестирую свое приложение angular 5 с помощью karma / jasmine, и оно хорошо работает, но я хочу интегрировать junit для создания отчетов XML, и проблема здесь.
Отчет xml хорошо сгенерирован, но тествсегда цикл без изменения кода, вот мой karma.conf
module.exports = function(config) {
config.set({
basePath: '',
frameworks: ['jasmine', '@angular/cli'],
plugins: [
require('karma-jasmine'),
require('karma-chrome-launcher'),
require('karma-jasmine-html-reporter'),
require('karma-junit-reporter'),
require('karma-coverage-istanbul-reporter'),
require('@angular/cli/plugins/karma')
],
client: {
clearContext: false // leave Jasmine Spec Runner output visible in browser
},
coverageIstanbulReporter: {
reports: ['html', 'lcovonly'],
fixWebpackSourcePaths: true
},
angularCli: {
environment: 'dev'
},
reporters: ['progress', 'kjhtml', 'junit'],
port: 9876,
colors: true,
logLevel: config.LOG_INFO,
autoWatch: true,
browsers: ['Chrome'],
singleRun: false,
junitReporter: {
outputDir: 'reports',
outputFile: 'junit-report.xml'
}
});
};
Я установил singleRun в false, чтобы запустить тест, как только код будет изменен, но этовсегда цикл с junit в 'reportes' (без изменения кода от меня).
Если я удаляю junit из списка репортеров, тесты не зацикливаются и ждут, что я изменю код для запуска.
У кого-нибудь уже есть проблема?
PS: в мой tsconfig.spec.json включены только файлы ts
"compilerOptions": {
"allowSyntheticDefaultImports": true,
"declaration": false,
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
"lib": [
"dom",
"es2015"
],
"module": "es2015",
"moduleResolution": "node",
"sourceMap": true,
"target": "es5"
},
"include": [
"../../src/**/*.ts"
],
"exclude": [
"../../node_modules",
"../../src/**/__tests__/*.ts"
],
"compileOnSave": false,
"atom": {
"rewriteTsconfig": false
}
Когда я исключаю репозиторий отчетов, проблема остается...