shinmのブログ

ITエンジニアの日常。

テスト駆動開発について

最近、テスト駆動開発をおもしろいと感じるようになってきて、
いろいろ試しています。

以下のような流れと理解してやっています。

  1. まず、最初にメソッドなどのおおまかな設計をし、その設計をもとにテストコードを書きます。
    • メソッドを呼びだして、想定値と戻り値を比較するようなやつ。
  2. そして、まずテストコードを実行します。
    • 当然、実際のメソッドがないので、エラーとなります。
  3. その後、エラーにならないようにメソッドの作成、及び、ロジックの実装をしていきます。


やっていて思ったことは、以下のような感じです。

  • メソッドを作成するたびにテストを実装するようになるので、品質があがる。
  • エラーの原因が特定しやすい。
  • リグレッションテストが容易である。


これから家で作成するプログラムはテスト駆動でやっていきたいと思っています。
以下の書籍が大変参考になりました。
javarubyでやりました。

JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)

JUnit実践入門 ~体系的に学ぶユニットテストの技法 (WEB+DB PRESS plus)


Rubyスクリプティングテクニック ―テスト駆動による日常業務処理術

Rubyスクリプティングテクニック ―テスト駆動による日常業務処理術