PhantomJS + Mocha + Blanket = Poncho
Client-side JS code coverage using PhantomJS, Mocha and Blanket.
Install
$ npm i --save-dev poncho
Usage: poncho [options] <file>
Options:
-h, --help output usage information
-V, --version output the version number
-R, --reporter [type] reporter: plain (default) | lcov | json
Usage
Let's imagine that you already have PhantomJS + Mocha client-side tests (with mocha-phantomjs, for example), something like this test/test.html
:
Mocha Test <!-- mocha --> <!-- target script --> <!-- test file --> <!-- run -->
All you need to do is add data-cover
attribute to the target script tag:
…and run Poncho:
$ poncho --reporter num test/test.html
coveralls.io
Send data toInstall node-coveralls:
$ npm i --save-dev coveralls
…and pipe Poncho's lcov
reporter to it:
$ poncho --reporter lcov test/test.html | coveralls
How it works?
You don't want to know. Seriosly. It's so hacky way that it can cause the blood from your eyes.