unitarias unit test pruebas nodejs node how node.js jenkins mocha istanbul

node.js - test - pruebas unitarias node js



Excluir archivos de cobertura cuando se usa Mocha y Estambul (4)

¿Cómo puedo excluir carpetas y archivos (por ruta) del informe de cobertura cuando uso mocha y instanbul?

Quiero excluir por una configuración y no

/*istanbul ignore next*/

en cada archivo.

(El uso del informe generado por Jenkins)

Gracias,


En su caso, usaría lo siguiente:

istanbul -x "**/pattern/to/exclude/**" cover _mocha -- --recursive -R tap test/ > test.tap && istanbul report clover – snoof 9 hours ago

Puede excluir múltiples patrones simplemente agregando varias opciones -x .


Gracias por las sugerencias,

Esta fue la solución:

istanbul cover -x ''**/config/**'' _mocha -- --recursive -R tap test/ > test.tap && istanbul report clover


Puede ignorar archivos que coinciden con un determinado patrón utilizando el parámetro -x .

istanbul help cover ... -x <exclude-pattern> [-x <exclude-pattern>] one or more fileset patterns e.g. "**/vendor/**" ...


Si ejecuta la istanbul help config , verá la configuración predeterminada de Estambul. Puede copiar / pegar la configuración predeterminada en un archivo .istanbul.yml en la raíz de su árbol fuente y luego almacenar las exclusiones en él.

Esto es lo que parece el mío (esto hace que sea fácil excluir muchos directorios):

verbose: false instrumentation: root: . extensions: - .js default-excludes: true excludes: [''**/tinymce/**'', ''**/lib/**'', ''**/tools/**'', ''**/build/**''] embed-source: false variable: __coverage__ compact: true preserve-comments: false complete-copy: false save-baseline: false baseline-file: ./coverage/coverage-baseline.json include-all-sources: true include-pid: false es-modules: false reporting: print: summary reports: - lcov dir: ./tools/coverage watermarks: statements: [50, 80] lines: [50, 80] functions: [50, 80] branches: [50, 80] report-config: clover: {file: clover.xml} cobertura: {file: cobertura-coverage.xml} json: {file: coverage-final.json} json-summary: {file: coverage-summary.json} lcovonly: {file: lcov.info} teamcity: {file: null, blockName: Code Coverage Summary} text: {file: null, maxCols: 0} text-lcov: {file: lcov.info} text-summary: {file: null} hooks: hook-run-in-context: false post-require-hook: null handle-sigint: false check: global: statements: 0 lines: 0 branches: 0 functions: 0 excludes: [] each: statements: 0 lines: 0 branches: 0 functions: 0 excludes: []