QUnitでJavaScriptのテストをする

Coderetreat in Tokyo 2ndで、JavaScriptのテストの仕方について学んだので忘れないうちに書いときます!

Coderetreat in Tokyo 2ndとは

リンク先見てもらえれば雰囲気が分かると思うのですが、ひたすらペアプロをして学習をするイベントです。
今回の課題はライフゲームで、45分実装→ペア交代→コード消す→また一から45分実装というのを5セット繰り返しました。
最初はJavaでやってたのですが、普段あんまり使わない言語でやる方が発見が多くて楽しかったので、途中からJavaScriptでやることに(*´ω`)

QUnitとは

QUnitは、jQueryプロジェクトから生まれたテストフレームワークで、JavaScript単体テストをすることが出来ます。
テスト結果はブラウザで確認するのですが、QUnit-TAPを使うと、コマンドラインから実行することができ、Jenkinsで利用することも出来るそうです。

JSの他のテストフレームワークには、Jasmineというのもあり、QUnitはオワコンでこれからはJasmineだ!という意見もあるくらい素敵みたいです。
そちらも気になるのですが、とりあえず今回はQUnitで。

QUnitの使い方

いっぱい解説しているページがあるんで、そちらを見て下さい。

ひとつだけ注意点としては、結果が期待値と同じかを比較する関数は"equals"じゃなくて"equal"です!
2個目のリンクのページに間違えて書かれてて、ちょっとつまずきました(;´Д`)

実行環境

あと、QUnitを使う環境を整えるのにちょっと手間取ったので、多分最小構成のファイル一式をGitHubに置いときました。
https://github.com/jquery/qunitから、必須ファイルだけ残したものになります。
life.jsがテスト対象のJSで、test/life-test.jsがテストコードです。
index.htmlを開くとテストが実行されて結果が表示されます。
ファイル構成とかファイル名とかは適当なので、大体みんなこうしてるよというのがあったら教えて下さい><
https://github.com/u1fukui/qunit

テストの実行結果のページはこんな感じになります。格好いい!
http://u1fukui.github.com/qunit/