Open Source WEB

こんにちは!

うっちーです。

今までのたてに流すテストと違って、XPのユニットテストは横合いからのテストです。

今までのテストは、岩壁を上から下に、たてにドリルを打ち込むようなものでありました。 その岩壁の構造に目をつぶって、上から表面の点を全て打ち尽くすことを私たちは試みていました。

XPのユニットテストは、岩壁の横に吸い付くたこのようであります。 岩壁の内部構造に合わせて、一つ一つのブロックを横から2本足で がっちり捉えている感じです。 片足は、テストを送って、もう片足は、結果を受け取り、 本体がその確認をするようなものです。

XPのユニットテストは、 テストコードから、ソースコードの関数を呼び出して、様々な引数を投げつけて、 動作を確認します。そうした動作確認のできた関数を積み上げていくのです。

テストコードは至ってシンプルです。

  • テスト関数名( "テストの趣旨", 期待値, 関数名( 引数 )

返ってきた値は、期待しているものと等しいかどうかを確認するだけです。

テストコードはソースコードとは別にあるので、ソースを汚すことはありません。 テストの仕組みは用意されているので、 テストコードを書けば、いつでも、どこでも、その場で気軽にすぐに確認できます。

既存のコード、標準のライブラリさえもテストすることができます。 絵空事のヘルプファイルを読むではなく、動かして確認できるのです。

ユニットテストを始めた当時は、私は、テストできることが楽しくてしようが ありませんでした。テストファーストとかよりも。 テストを走らせれば、 疑問はすぐに解決できますし、書いたコードが間違っていないかすぐに確認できます。 スペルミスなどは全くびくびくしなくなりました。 テストすれば簡単にわかるので、つまらないミスに精力をさくことはなくなり、 より中心的な機能に注力することができるようになりました。

小さい部分に絞ってのテストなので、考えやすくなりました。 テストケースの漏れも少なくなりました。 見る見るうちに積み上がっていくコード、しかも完全に動作できます。 仕事は達成感に満ち溢れ、ゴールに向かって進んでいるという実感は常にありました。

そして、テストすることで、悟らされたことが一杯ありました。 それはまたの機会に書かせていただきます。


フィードバック下さい!

Name:
Comment:

There is no comment.

このサイトは、 IPA の「平成15年度オープンソフトウエア活用基盤整備事業」 の委託事業として開発されたKahuaで試験的に運用しております。

Copyright (c) 2004-2007 株式会社タイムインターメディア About Us