10.0 まずテストから書く
内容
テスト駆動開発(TDD)は死んでしまったと主張する人たちもいる。
良いアイデアに見えるものの実際には多くのテストや、実装に依存するテストがかえって負担になってしまうという「テストによるダメージ」となりうまくいっていないという理由で。
テストファースト開発を行う利点は、既存のコードを変更するときにサポートを得られることであるが、いつテストを書くのをやめるべきかわからないときに、不必要に多くのテストを書くことになったり、実装依存のテストを書くことになったりと、「テストによるダメージ」が発生する。
こうなるとテストの変更が難しくなり、変更しやすさの手助けになるどころか負担となり、コードの変更は困難になり時間がかかるようになる。
しかし、テストを仕様と捉えることで、必要なテストが明確になる。
テスト駆動開発を正しく使用する方法と、落とし穴があることを伝えている。
学び
- テスト駆動開発を間違って行うと負担になる。正しく使うためには仕組みの理解が必要だ。
- 不必要に多くのテストや実装依存のテストは
学びを活かすアイディア・行動
- テスト駆動開発のノウハウ整理
- 現場のテストコードのコーディング規約づくり