Riferimento rapido

Cheatsheet Copertura Codice Mocha Blanket

Guida rapida per misurare la copertura del codice nei test JavaScript con Blanket.js e Mocha.

· Pubblicato

[!NOTE] Strumento Storico: Blanket.js era molto diffuso per la copertura in-process con Mocha. Per codebase moderne in Node.js e TypeScript si consigliano c8 (copertura nativa V8) o NYC / Istanbul.

Blanket.js è una libreria JavaScript per la code coverage progettata per funzionare facilmente con test runner come Mocha.

Installazione

npm install --save-dev blanket

Configurazione Helper di Test

Richiedi Blanket prima di importare i file di cui vuoi misurare la copertura:

// test/helper.js
if (process.env.COVERAGE) {
  require('blanket')({
    pattern: require('path').resolve('./src')
  });
}

// Importa i moduli dopo aver registrato il hook di blanket
const myModule = require('../src/index');

Script del Pacchetto

Aggiungi i comandi di copertura a package.json:

{
  "scripts": {
    "test": "mocha test/",
    "coverage": "env COVERAGE=1 mocha -R html-cov > coverage.html && open coverage.html"
  }
}

Aggiungi il report HTML generato al file .gitignore:

echo "coverage.html" >> .gitignore

Avvia la generazione del report di copertura:

npm run coverage

Integrazione Continua & Coveralls

Installa il reporter LCOV e l’adattatore Coveralls:

npm install --save-dev mocha-lcov-reporter coveralls

Aggiungi uno step di esecuzione nelle pipeline CI:

mocha -R mocha-lcov-reporter | ./node_modules/coveralls/bin/coveralls.js

Riferimenti

Argomenti correlati