mocha + istanbul + grunt でカバレッジレポート
カバレッジレポートを出すのに何か最新の方法ないかなーと調べていたら istanbul というのを見つけた。
使い方は簡単でこんな感じ。
$ npm install -g istanbul $ istanbul cover test-runner.js
オプションを指定しない場合、テキストのサマリーと coverage というフォルダにHTMLのレポートが作成される。
でもちょっと問題があって、僕は a.js のテストを同じディレクトリの a_test.js に書いているのだけど、この場合テストファイルも集計に加えられてしまっていた。テストファイルはだいたいカバレッジ100%なので高い結果が出てきてしまう。あと、最近の僕は何をするにも grunt ばっかり使っていて、カバレッジレポートの作成も grunt でやりたいと思った。オプションでどうにかなるのかも知れないけど。
それで、istanbul の cli のコードをチラ見して簡単なgruntのタスクにしたのが以下です。