私と私の友人は比較的新しいTDDで、「Obvious Implementation」テクニック(Kent Beckによる「TDD By Example」より)について論争しています。私の友人は、実装が明らかな場合、その新しい動作をテストする前に、先に進んでそれを書くべきだと言っています。そして実際、この本はこう言っています:
簡単な操作をどのように実装しますか?それらを実装するだけです。
また:
操作を実装する方法を知っていることが確実な場合もあります。どうぞ。
著者が意味するのは、最初にテストしてから「実装する」ことです。「フェイクイット( 'Till You Make It)」や実装段階でより小さなステップを必要とする他のテクニックとは対照的です。また、これらの引用の後、著者は「Obvious Implementation」を行うときに「赤いバー」(テストに失敗)を取得することについて話します。テストなしで赤いバーを取得するにはどうすればよいですか。
しかし、「自明」とはまだ最初のテストを意味するという本の引用を見つけることができませんでした。
どう思いますか?実装が「自明」な場合(TDDによると)、最初にテストするか、その後にテストする必要がありますか?それを言っている本やブログの投稿を知っていますか?