Io e il mio amico siamo relativamente nuovi TDD e abbiamo una disputa sulla tecnica "Implementazione ovvia" (da "TDD By Example" di Kent Beck). Il mio amico dice che se l'implementazione è ovvia, dovresti andare avanti e scriverlo - prima di qualsiasi test per quel nuovo comportamento. E in effetti il libro dice:
Come si implementano operazioni semplici? Implementali e basta.
Anche:
A volte sei sicuro di sapere come implementare un'operazione. Vai avanti.
Penso che l'autore voglia dire che dovresti prima testare e poi "solo implementarlo" - al contrario del "Fake It ('Till You Make It)" e di altre tecniche, che richiedono passaggi più piccoli nella fase di implementazione. Inoltre, dopo queste citazioni, l'autore parla di ottenere "barre rosse" (test non riusciti) quando si esegue "Implementazione ovvia" - come si può ottenere una barra rossa senza un test ?.
Eppure non sono riuscito a trovare alcuna citazione dal libro che dice "ovvio" significa ancora test prima.
Cosa ne pensi? Dovremmo testare prima o dopo quando l'implementazione è "ovvia" (secondo TDD, ovviamente)? Conosci un libro o un post sul blog che dice proprio questo?