J'utilise Karma pour écrire les cas de tests unitaires JS et Istanbul pour obtenir le rapport de couverture. Mon fichier karma.conf.js est comme ci-dessous -Je souhaite utiliser plus d'un type de rapport de couverture à l'intérieur de karma.conf.js
// karma.conf.js
module.exports = function(config) {
config.set({
files: [
'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)
'test/**/*.js': ['coverage']
},
// optionally, configure the reporter
coverageReporter: {
type : 'html',
dir : 'coverage/'
}
});
};
ici à l'intérieur coverageReporter Je veux utiliser le type 'html' et 'lcov'. Pour ce faire, je l'ai changé comme ci-dessous -
coverageReporter: { Type: 'html', 'lcov', dir: 'couverture /' }
J'exécuté karma start karma.conf.js
mais faire exception ci-dessous - -
C:\abc\npm-1.4.9>karma start karma.conf.js
05 05 2017 16:57:00.369:ERROR [config]: Invalid config file!
C:\abc\npm-1.4.9\karma.conf.js:45
type : 'html','lcov',
^
SyntaxError: Unexpected token ,
at createScript (vm.js:53:10)
at Object.runInThisContext (vm.js:95:10)
at Module._compile (module.js:543:28)
at Object.Module._extensions..js (module.js:580:10)
at Module.load (module.js:488:32)
at tryModuleLoad (module.js:447:12)
at Function.Module._load (module.js:439:3)
at Module.require (module.js:498:17)
at require (internal/module.js:20:19)
Toute aide est très appréciée.
Cela a fonctionné, mais a un effet secondaire. J'ai mentionné deux navigateurs dans karma.conf.js (Chrome et PhantomJs) donc normalement le rapport est généré pour chaque navigateur séparément mais au-dessus de config ignore la configuration du navigateur. Des pensées à ce sujet ??? - –