[!NOTE] Herramienta histórica: Blanket.js fue ampliamente utilizado para cobertura ligera en proceso con Mocha. Para proyectos modernos en Node.js y TypeScript se recomienda c8 (cobertura nativa V8) o NYC / Istanbul.
Blanket.js es una biblioteca sencilla de cobertura de código JavaScript diseñada para ejecutores de pruebas como Mocha.
Instalación
npm install --save-dev blanket
Configuración del Helper de Pruebas
Importa Blanket antes de cargar los archivos cuyo porcentaje de cobertura deseas medir:
// test/helper.js
if (process.env.COVERAGE) {
require('blanket')({
pattern: require('path').resolve('./src')
});
}
// Carga los módulos después de registrar el hook de blanket
const myModule = require('../src/index');
Scripts de paquete
Agrega comandos de cobertura en package.json:
{
"scripts": {
"test": "mocha test/",
"coverage": "env COVERAGE=1 mocha -R html-cov > coverage.html && open coverage.html"
}
}
Agrega el reporte HTML generado a tu .gitignore:
echo "coverage.html" >> .gitignore
Ejecuta la generación del reporte de cobertura:
npm run coverage
Integración Continua y Coveralls
Instala el reportero LCOV y el adaptador de Coveralls:
npm install --save-dev mocha-lcov-reporter coveralls
Agrega el paso de ejecución en pipelines de CI:
mocha -R mocha-lcov-reporter | ./node_modules/coveralls/bin/coveralls.js