Kurzreferenz

Mocha Blanket Code-Coverage Spickzettel

Kurzreferenz zur Messung der Testabdeckung in JavaScript-Codebasen mit Blanket.js und Mocha.

· Veröffentlicht

[!NOTE] Historisches Werkzeug: Blanket.js war für leichtgewichtige In-Process-Coverage mit Mocha weit verbreitet. Für moderne Node.js- und TypeScript-Projekte empfehlen sich c8 (native V8-Coverage) oder NYC / Istanbul.

Blanket.js ist eine nahtlose JavaScript-Bibliothek zur Code-Coverage-Analyse für Testrunner wie Mocha.

Installation

npm install --save-dev blanket

Test-Helper einrichten

Laden Sie Blanket vor dem Einbinden der zu analysierenden Quelldateien:

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

// Module erst nach Registrierung des Blanket-Hooks laden
const myModule = require('../src/index');

Package-Skripte

Coverage-Befehle zu package.json hinzufügen:

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

Generierten HTML-Bericht in .gitignore aufnehmen:

echo "coverage.html" >> .gitignore

Erzeugung des Coverage-Berichts starten:

npm run coverage

Continuous Integration & Coveralls

LCOV-Reporter und Coveralls-Adapter installieren:

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

Ausführungsschritt in CI-Pipelines ergänzen:

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

Referenzen

Verwandte Themen