Estou apenas começando com o teste de unidade, mas não tenho certeza se realmente entendi o objetivo de tudo. Leio tutoriais e livros sobre tudo, mas só tenho duas perguntas rápidas:
Eu pensei que o objetivo do teste de unidade é testar o código que realmente escrevemos. No entanto, para mim, parece que, para podermos executar o teste, precisamos alterar o código original; nesse momento, não estamos realmente testando o código que escrevemos, mas o código que escrevemos para o teste.
A maioria dos nossos códigos depende de fontes externas. Ao refatorar nosso código, no entanto, mesmo que ele quebrasse o código original, nossos testes ainda funcionariam muito bem, pois as fontes externas são apenas estragos em nossos casos de teste. Não derrota o objetivo do teste de unidade?
Desculpe se pareço idiota aqui, mas achei que alguém poderia me esclarecer um pouco.
Desde já, obrigado.
fonte