auientの日常

ノンジャンルで書きたいことを書くブログ

テスト駆動開発の効率の悪さ

今、運のいいことに担当の仕事が新規案件で、しかもわりと裁量があるので、UnitTestを実践&勉強している。(やっと!)
いい機会なのでテスト駆動開発を試してみたのだけど、これがどうにも効率が悪く、良い方法だと思えない。

たぶん、原因は設計が固まってないことだと思う。

今は、スケッチみたいに書いては消して、クラス分割やデータの持たせ方・依存関係のバランスを探るような作業をしている。この状況でテスト駆動をやってみて、

  • 「やっぱこの構成ダメだな」と思ってテストコードまで書き直すオーバーヘッドがでかい(めんどい、手戻り作業量が増えて嬉しくない)
  • 単体テストケース内のクラス利用例だと単純すぎて、結合時のクラスの利用方法がイメージしづらい。参考にならない

という問題を感じている。

これ、自分のやり方がまずいだけなのか、そうでないのか。
コード書く前にばりっとモデリング済ませてからやると、確かにうまくいきそうな気はするけど、最初からそんないい設計できないし。
どうなんだろーな。