JavaScriptテストフレームワークmocha
何でテストコードを書くの?
一般的な考え方だと、テストコードを書けば、コードの信頼性が高まります。そして、プログラマーが自分の書いたコードに対して自信を持てるようになります。
もちろん、テストコードではなく、実際アプリを動かしてテストするのも問題ないですが、大きなプロジェクトやチームワークになると、このやり方は特定なコードをテストするのが難しいので、チームワークに参加するなら、テストコードを書くのが必須です。
mocha + should.js + superagent
mocha
mocha は非常に使いやすいJavaScript テストフレームワークです。バックエンドとフロントエンド両方とも使えます。
should.js
should.jsはmochaのプラグインです。should.jsを使えば
このようなより自然な英語表現のコードが書けます。
superagent
superagentはhttpリクエストのライブラリです。superagentのAPIを使えば、アプリの動作などのテストコードが書けます。
サンプル
仮moduleのplayer
を作成し、player.js
として保存します。
では、これからテストコードを書きましょう。
testフォルダを作成して、下記のコードをindex.jsとして保存します。
before()
before(function(){})
はすべてのテストを実行する前に実行します。mochaにはこのような便利なhook
が他にもあります:
describe(description, callback)
description
はテストの説明です、普通はテスト対象のmodule名になります。
it(description, callback)
description
はmoduleの各動作のテスト説明になります。
should.exactly()
はメソードが返した値を検証することができます。should
は期待値を検証するに使うメソードが多数あります、使い方はドキュメントを参考してください:https://github.com/tj/should.js
テストを実行
下記のコマンドを叩くと、テストが実行されます。
結果はこうなります。
つまんなかったら、-R nyan
オプションをつけると、かわいい結果画面になります。
おまけに、テストコードを1000回実行して、猫を走らせてみました。