2010年4月30日金曜日

テスト駆動型開発の基本的な考え方について

今日はテスト駆動型開発の基本的な考え方について書きます。(間違ってたらすいません)
テスト駆動型開発って聞くとすごく難しい感じがしますが、
コードを書く前にテストケースを上げる
ただそれだけのことです。
テスト駆動型開発によって得られるメリットは
  • 仕様を把握していないとテストケースが作れない、つまり仕様の理解を深めることが出来る、あいまいな部分をなくすことが出来る。
  • 仕様の理解を深めることによってバグが少ない、かつ拡張性が高い、かつメンテナンスしやすい設計が出来る可能性が高くなる。
  • 仕様に矛盾や問題があるとテストケースが作れない、つまり仕様書レベルでバグをつぶすことが出来る。
などです。
私が以前関わっていたプロジェクトではテストを自動化し、
  1. 仕様書を確認する。
  2. テストケースを上げる。
  3.  「1.叉は2.」で仕様書に矛盾や問題が有った場合は仕様書を差し戻す。
  4. 自動化の為のテストケースコードを記述する。
  5. 設計&実装
  6. テストケースを通す。
のような手順で開発して、毎朝その日の最新ソースで全てのテストコードを実行し常に品質を確保していました。

0 件のコメント:

コメントを投稿