Toshiyuki Kawanishi Blog


2008
12 . 4

Development Test の品質

少し前になりますが,以前TEFの勉強会でお世話になった szk-takanori さんのブログでInfoQの「良いテストの品質とは何か?」という記事が紹介されていました。この記事では、何人かの Development Test (Developer''s Test) の巨匠の意見がまとめてあります。


この記事は Development Test の観点で書かれているようですが、ポイントをまとめるとだいたい以下のようになるでしょうか。

  1. 保守: テストスクリプト(テストコード)の可読性が高い。テストスクリプトのメンテナンスが可能であることが大事。
  2. 意図: そのテストをおこなう理由が明確。逆にやらなく良いテストはしない。
  3. 独立: テストどうしの依存性が低い。また、各テストケースがテスト対象の一部分だけを対象とすることで、テスト対象との依存性も小さくする。誰がどのような順番で実行しても意味のあるテストができることが理想。
  4. 高速: テストが速く実行できる。速いことによって、どんな局面でも繰り返しテストできるようにしておく。
  5. 簡易: テストスクリプトを簡単に書けることが大事。例えば、開発言語と同じ言語でテストも書けるのが良い。また、製品コードと同じような規約にしたがって書くのが良い。

それから、Development Testは「グレーボックス」として書かれることが望ましいという意見も気になりました。


あ、記事で紹介されている Roy Osherove さんの "The Art of Unit Testing" という本が来年2月に発刊されるようですね。注文しなければ......