Olá, Pablo, como vai?
Essa sensação de estranheza ao escrever testes antes do código é bem comum, principalmente quando estamos acostumados com o fluxo tradicional de desenvolvimento. No Spec-Driven Development, assim como no TDD, o teste atua como um contrato de design, definindo antecipadamente quais entradas o sistema deve aceitar e quais respostas precisa devolver. Ao rodar esse teste inicialmente, o esperado é justamente que ele falhe com erros de rota inexistente ou arquivo não encontrado, servindo de guia para criar apenas o código estritamente necessário para fazê-lo passar.
Essa abordagem ajuda a focar na interface pública e no comportamento esperado da aplicação antes de se preocupar com os detalhes internos de implementação. Para aprofundar no tema, conteúdos sobre API-First Design complementam muito bem esse ecossistema de especificações executáveis.
Pensando no seu fluxo de trabalho atual, como você enxerga que escrever os testes antes da implementação poderia mudar a forma como você planeja a arquitetura dos seus projetos?
Qualquer outra dúvida, o fórum continua à disposição para ajudar nos seus estudos.
Para saber mais:
Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos!