質問: プログラミングの質問とは違うのですが、 テスト駆動開発についてみなさんに質問です。 私は、開発においてテストの重要性を結構意識しています。 そのため開発では、なるべくテストコードを書くようにしています。 ですが、テストコードを作るタイミングはメソッドを作り終わった後がほとんどで、 テストを先に作るというのは出来た記憶がありません。 (単体テスト用やデバック実行の変数値の確認用) 「うちの現場では、テスト駆動開発を徹底しているよ」という所はあるでしょうか?
回答: うちの開発部隊もテストコードを書いてユニットテストをしてますが、コードが出来上がってから作ってますね。 しかもコードを正にして書いているもんだから意味がない。 なもんだから、テストコードを実行してバグが見つかるということは稀。 むしろテストコードを書いているときにおかしいところを見つけることのほうが多いです。 結果、お客さんにこれだけやってますよ、と見せ付けるためのお飾りテストに成り下がっています。 それなのにテストコードを書く工数は馬鹿にならないという悪循環。 ハッ、つい愚痴ってしまいました。すみません。 TDDを行うには、コードを書く前に関数やメソッドの設計を終わらせないといけないのがネックではないでしょうか。 今の時代のコーディング規模になると、先にコーディングした方が早いですし、どうしても設計だけでは漏れがありますね。 なのでTDDで進めるのは難しいんじゃないかと思います。 私もTDDがうまくいっている現場を見てみたいです。