Write and Run

it's a simple way, but the only way.

mocha でカバレッジがとれるらしいので試してみた

こんにちは

KOBA789 です。最近はおうちクラウドにご執心です。あ、おうちクラウドについては後日書きますね(伏線)。

mocha でカバレッジが取れると聞いて

ほうほう。それでそれで?

mocha --reporter html-cov > coverage.html && open coverage.html

f:id:koba789:20120317160838p:plain
あれー、おっかしいなー

とりあえずググります

Mocha test coverage
なるほど。

こうすればよいそうです

$ sudo npm install -g jscoverage
$ cd ./your/project/dir/
$ jscoverage ./lib ./lib-cov

自分はなんか npm からインスコできなかったので Github からソース落としてビルドしました。

で、

まだやることはあって、TJ のブログには「index.js を書き換えろよ」って書いてあったんですが、なんかディレクトリ構成とか違ってアレだったので自分はテストコードの方を編集して、

myModule = if process.env.TEST_COV then require '../lib-cov' else require '../lib'

# まだ CoffeeScript のハイライトには対応してないんですね
そしてこんな感じでコマンドを叩くと

TEST_COV=1 mocha --reporter html-cov > coverage.html && open coverage.html

f:id:koba789:20120317161630p:plain
いいねぇ。

ちなみに

自作の URL ルーティングモジュール(KOBA789/router-line · GitHub)は、Travis を使っていたり、Mocha でカバレッジとってたりするので参考になるかもしれません。