unit tutorial test spectacular karma for karma-runner

karma runner - tutorial - ¿Cómo configurar la cobertura del código de corredor Karma?



npm karma (1)

Estoy intentando que el corredor Karma genere informes de cobertura de código con formato de cobertura durante una compilación de Jenkins. Puedo hacer que genere un archivo de cobertura.xml, pero en realidad no tiene datos de cobertura. Parece (usando LOG_DEBUG ) que el preprocesador de cobertura no se está ejecutando.

Las piezas relevantes de mi archivo karma.conf.js son:

files = [ JASMINE, JASMINE_ADAPTER, ''app/components/angular/angular.js'', ''app/components/angular-mocks/angular-mocks.js'', ''tmp/scripts/**/*.js'', ''tmp/spec/**/*.js'' ]; preprocessors = { ''tmp/scripts/**/*.js'': ''coverage'' }; // test results reporter to use // possible values: ''dots'', ''progress'', ''junit'' reporters = [''dots'', ''junit'', ''coverage'']; junitReporter = { outputFile: ''test-results.xml'' }; coverageReporter = { type: ''cobertura'', dir: ''coverage/'', file: ''coverage.xml'' };

(El informe junit está generando multa).


Aparentemente, la documentación de cobertura del código karma era más literal de lo que pensaba. Cambiando la configuración de mis preprocessors a

preprocessors = { ''**/tmp/scripts/**/*.js'': ''coverage'' };

(note lo anterior **/ ) hizo el truco. No estoy seguro de por qué la sintaxis es diferente para la matriz de files y el objeto preprocessors ( ''tmp/scripts/**/*.js'' vs. ''**/tmp/scripts/**/*.js'' ).