まったりとスタート。
◆QUnitでユニットテスト
Cena-DTAのJavaScriptのユニットテストをするためにQUnitを使ってみた。
http://docs.jquery.com/Qunit
テストコードを作るのはとても簡単。
非同期(asynchronous)の場合のテストもできる。
http://net.tutsplus.com/tutorials/javascript-ajax/how-to-test-your-javascript-code-with-qunit/
「QUnit asynchronous」でググって最初のページだけど。
疑似コードは:
test( "asynchronous test sample", function() { stop(); // テストを一旦止める async( callback_func ); var callback_func = function() { start(); // テスト再開 ok( true ); } {);
・時間の読めない関数(async)を呼ぶ前に、一旦テストをstop、
・コールバック関数で、実際に実行される箇所で、テストstart、
・それからテスト条件を書く、
という感じ。
面倒な点といえば・・・
テストしたいのがDOMに正しく書かれたかどうかのため、テストの設定が大変だった。また書かれた内容をjQueryで読み込んでとかも面倒。
これはQUnitが原因ではなくて、おしなべてJavaScript全般にいえることでしょう。
◆もっとテストを
結構、テスト書くのは大変です。
どの機能を、どうやってテストしたらいいのか、考えるだけでも時間がかかってます。先にテストを考えてから作るといいんですかね?
それって、ボトムアップみたいな開発ならできそうなのですが、トップダウンで作ってるとき(つまり試行錯誤しながらクラス設計する場合)後回しにしてしまいそう。いや、後回しにして、後でテスト足りなくて困るという・・・
0 件のコメント:
コメントを投稿