最近はRailsで作ったシステムをテストしてる。
そんでコードや動作を眺めていると、「こんな機能必要じゃないか」とか「こうしないとパフォーマンスやばいな」とか思ったりしてコードを修正するようになる。
そこでは必ずTDD(テスト駆動型開発)で開発を行っている。方法はこんな感じ。
- まずその変えたい機能はこういう動作をしないといけない というテストコードを書く。 それをテストすると必ず失敗する。そこでまずホッとする。
- コードを修正する。修正後テストを再度実行して通ればホッとする。通らなかったり、他のテストコードの部分が失敗してたら、適宜調査してテストが通るように開発を進める。
- 同じテストが通るでも、もっとコードをきれいにするにはどうしたらいいかを考えてコードを整理する
- コードが細切れになった
- ちょっと安心が生まれた
- TDDやってるぜという誇り?
- 違う道のコーディングの楽しさ(テストを全部通らせたときはうれしい)