node.jsでunit test
node.jsでテストの書き方について共有します。
nodeunitをインストール
アプリがあるフォルダで以下のコマンドを実行。
$ npm install nodeunit
テストコードの作成
nodeunitでは、テスト方法として2種類用意されている。
まず基本的な記法は、以下の通りです。
exports.【テスト名1】 = function(test){ // テストプログラム1 }; exports.【テスト名2】 = function(test){ // テストプログラム2 };
もう一つの方法がテストをグループ化する方法で、以下の記法となる。
exports.【グループ名】 = function(test){ 【テスト名1】: function(test){ // テストプログラム1 test.done(); }; 【テスト名2】: function(test){ // テストプログラム2 test.done(); }; };
またグループでテストする場合には、以下の方法でテスト実行前と実行後にプログラムを呼び出すことができる。
ファイル操作やDB操作でよく利用されます。
exports.【グループ名】 = function(test){ setUp: function(callback){ // テスト実行前処理 callback(); }; tearDown: function(callback){ // テスト実行後処理 callback(); }; 【テスト名1】: function(test){ // テストプログラム1 test.done(); }; 【テスト名2】: function(test){ // テストプログラム2 test.done(); }; };
グループ化されたテストプログラムは、最後に「test.done();」を忘れないようにする。
またテスト準備・後処理では、最後にコールバック関数を呼ぶことを忘れないようにする。
テストの実行
上述の方法で書かれたテストプログラムを「【テストファイル名】.js」で保存する。
そして、以下のコマンドでテストが実行され、結果が表示されます。
$ nodeunit 【テストプログラムファイル】
なおnodeunitは、htmlファイルにテストコードを埋め込むことで、ブラウザ上でもテストができます。
詳細については、「ReadMe」ファイルを参照のこと。