Articles of code coverage

Cobertura de códigos Karma / Istanbul no encuentra funciones y siempre devuelve 100%

Estoy intentando agregar cobertura de código para mis testings de Karma, sin embargo, aunque encuentra los files JS correctos que estoy probando, no encuentra las funciones dentro de esos files. De acuerdo con lo que he leído hasta ahora, creo que tiene que ver con que los files no se han hojeado correctamente antes de […]

El complemento js-test-driver + coverage se bloquea en las sentencias de JavaScript 1.7

Tratando de agregar soporte de testings en mi proyecto. Se adjuntó JsTestDriver con el plugin de cobertura. Las testings ficticias funcionan correctamente, pero cuando cargo todos mis files fuente, la aplicación se cuelga con lo siguiente: [java] **line 109:12 no viable alternative at input 'formFound'** [java] Exception in thread "main" com.google.jstestdriver.coverage.CodeInstrumentor$InstrumentationException: error instrumenting /path/discover.js [java] […]

¿Qué tipo de código es probable que elimine un motor de JavaScript?

(Este es un pequeño problema XY, pero decidí hacer la pregunta que me interesa, en lugar de la que necesito estrictamente en este momento). Sé que los diversos motores modernos de JavaScript tienen eliminadores de código muerto y otros medios para deshacerse de código que no tiene ningún efecto o efecto secundario, pero ¿cómo identificar […]

Código mínimo para usar Estambul programáticamente

Quiero ejecutar el command istanbul cover node_modules/mocha/bin/_mocha dist/test utilizando la API programática de Estambul. Pero los documentos no dicen mucho al respecto, además de que todo es posible y se vincula a la enorme documentation de la API. No pude encontrar ningún ejemplo corto en internet. No quiero generar un process secundario o usar otro […]

Cómo ejecutar la cobertura de código para el código javascript del lado del cliente utilizando ronco

¿Cómo puedo ejecutar la cobertura de código para el código javascript del lado del cliente usando ronco? He ejecutado la testing del código javascript del lado del cliente usando mocha-phantomjs para probarla usando la página html, y funciona bien, pero no pude encontrar una manera de ejecutar la cobertura del código para ello. Será genial […]

¿Cómo extraigo la cobertura de testing del reportero de resumen de text de estambul con una expresión regular?

Gitlab CI requiere que especifique una expresión regular para extraer la cobertura del código de las declaraciones (para que puedan mostrarlo). Dado el resultado de compilation a continuación (con bromas e istanbul), he logrado llegar tan lejos como: /Statements.*(\d+\%)/ … (other build output) =============================== Coverage summary =============================== Statements : 53.07% ( 95/179 ) Branches : […]

Mejorando la cobertura de sucursales con Estambul

El siguiente fragment de código tiene solo un 50% de cobertura de sucursal (ver a continuación el informe de cobertura). No estoy seguro de cómo mejorar esto, ya que no hay declaraciones de if . Estoy pensando que Estambul debe hacer algún tipo de medición que no entiendo completamente, cualquier puntero es apreciado. angular .module("konakFront", […]

Directorios nesteds de la cobertura de Estambul en el informe html

El informe de cobertura de testing unitaria de estambul en formatting html muestra todas las carpetas del proyecto en index.html. En realidad, aplana la estructura del directory. ¿Existe una opción para procesar el informe html con carpetas anidadas?

Comprender la cobertura del código de Estambul

Acabo de comenzar con un file de ejemplo (ejemplo.js) que tiene las siguientes afirmaciones: x = 42; if(false) x = -1; No tengo ningún file de testing de unidad. pero cuando corro istanbul cover example.js Veo algunos de los datos de cobertura a continuación =============================== Coverage summary =============================== Statements : 66.67% ( 2/3 ) Branches […]

Cobertura de código de callback de evento

Uso Karma (actualmente v0.10.10) y Jasmine para mis testings unitarias, y Estambul (a través de cobertura de karma) para informes de cobertura de código. Noté un comportamiento extraño del reportero de cobertura de código en un caso particular. El código que trato de probar es más o less el siguiente: /** * @param {HTMLInputElement} element […]