blanketでmochaで書いたテストのカバレッジを測定する

  • このエントリーをはてなブックマークに追加

mochaで書いたテストのカバレッジ(網羅率)を取るにはどうしたらよいのかと思っていたところ、blanketというのを見つけたので試してみました。

早速、blanketとmochaでテストを走らせた際にカバレッジを表示させられる様にするためのレポーターを追加します。

$ npm install --save-dev blanket
$ npm install --save-dev mocha-spec-cov-alt

blanketの設定をpackage.jsonに追記します。data-cover-neverにはカバレッジ測定の対象としないディレクトリを明記します。ここではテストが入っているディレクトリとnpmのパッケージがインストールされているディレクトリを除外しています。

  "config": {
"blanket": {
"pattern": [
""
],
"data-cover-never": [
"node_modules",
"test"
]
}
}

更に npm test を実行する際の設定を以下の様に修正します。mochaを呼び出す際に以下の2つのオプションを追加します。

  • レポーターにmocha-spec-cov-altを指定 -R mocha-spec-cov-alt
  • 実行時にblanketを読み込む様に指定 --require blanket

修正例としては以下の様な形。

  "scripts": {
"test": "NODE_ENV=\"testing\" mocha -R mocha-spec-cov-alt --recursive --require blanket "
},

ここまででテストのカバレッジがmochaの実行結果として表示される様になります。*1

npm test を実行すると

f:id:hideack:20150801114446p:plain

といった形でテストの末尾にカバレッジが表示される様になります。

参考

blanketjs.org

github.com

*1:コメントに従ってscripts修正しました

(Visited 134 times, 1 visits today)
  • このエントリーをはてなブックマークに追加

SNSでもご購読できます。

コメント

  1. kitak より:

    run-scriptだったら、node_modules以下のbinにパスが通っているので、
    “`
    “NODE_ENV=\”testing\” mocha -R mocha-spec-cov-alt –recursive –require blanket
    “`
    でもよさそうです。

  2. kitak より:

    run-scriptだったら、node_modules以下のbinにパスが通っているので、
    “`
    “NODE_ENV=\”testing\” mocha -R mocha-spec-cov-alt –recursive –require blanket
    “`
    でもよさそうです。

  3. hideack より:

    あ!確かに。本文の方もそうしよう!

コメントを残す

*