Aula 12: Testes, mocks e seams
Quando a lógica chama o relógio, o envio de e-mail ou o banco de dados diretamente — todo teste passa a depender do mundo real: lento, instável e às vezes falhando só à meia-noite. Nesta aula vamos abrir um seam: uma interface pequena por onde injetamos um substituto (fake), e ganhamos testes que ro
Um seam é como uma tomada elétrica na parede: você pode conectar nela um aparelho de verdade ou um aparelho de teste — e a parede em si nunca muda.
- Design testável (seams e mocks)
- Esconda dependências reais atrás de interfaces pequenas, para que os testes possam injetar substitutos e controlar cada entrada.
- seam — um ponto de troca para uma dependência
- Um lugar no código onde o comportamento pode ser trocado de fora — por exemplo, um parâmetro de construtor tipado como uma interface — sem editar a lógica.
- fake — uma implementação falsa para testes
- Uma implementação escrita à mão de uma interface (como FakeClock) cujo comportamento o teste controla totalmente — tornando os resultados determinísticos.