Quanto mais tarde você testar, mais custará escrever testes.
Quanto mais tempo um bug permanecer, mais caro será o reparo.
A lei dos rendimentos decrescentes garante que você possa testar seu esquecimento tentando garantir que não haja bugs.
Buda ensinou a sabedoria do caminho do meio. Os testes são bons. Existe uma coisa boa demais. A chave é poder saber quando você está desequilibrado.
Cada linha de código que você escreve sem testes terá custos significativamente maiores para adicionar testes posteriormente do que se você tivesse escrito os testes antes de escrever o código.
Cada linha de código sem testes será significativamente mais difícil de depurar ou reescrever.
Cada teste que você escreve leva tempo.
Todo bug levará tempo para ser corrigido.
Os fiéis lhe dirão para não escrever uma única linha de código sem antes escrever um teste que falhou. O teste garante que você esteja obtendo o comportamento esperado. Ele permite que você altere o código rapidamente, sem se preocupar em afetar o resto do sistema, pois o teste prova que o comportamento é o mesmo.
Você deve pesar tudo isso contra o fato de que os testes não adicionam recursos. O código de produção adiciona recursos. E os recursos são o que paga as contas.
Pragmaticamente falando, adiciono todos os testes com os quais posso me safar. Ignoro comentários a favor de assistir a testes. Eu nem confio no código para fazer o que acho que faz. Eu confio em testes. Mas sou conhecido por jogar ocasionalmente Mary e ter sorte.
No entanto, muitos codificadores de sucesso não fazem TDD. Isso não significa que eles não testam. Eles simplesmente não insistem obsessivamente que toda linha de código tenha um teste automatizado contra ela. Até o tio Bob admite que não testa sua interface do usuário. Ele também insiste em que você mova toda a lógica da interface do usuário.
Como uma metáfora do futebol (o futebol americano), o TDD é um bom jogo de chão. O teste apenas manual, onde você escreve uma pilha de código e espera que funcione, é um jogo que está passando. Você pode ser bom em qualquer um. Sua carreira não fará os playoffs, a menos que você possa fazer as duas coisas. Não será o superbowl até que você aprenda quando escolher cada um. Mas se você precisar de um empurrão em uma direção específica: os telefonemas das autoridades vão contra mim com mais frequência quando estou passando.
Se você quiser experimentar o TDD, recomendo que você pratique antes de tentar fazê-lo no trabalho. O TDD feito pela metade, meio coração e meio jumento é uma grande razão pela qual alguns não o respeitam. É como derramar um copo de água em outro. Se você não se comprometer e fazê-lo rápida e completamente, você acaba pingando água por toda a mesa.