Mocks, stubs e fakes: diferenças e usos em testes
Escolha o tipo de substituto certo para isolamento, velocidade e previsibilidade.
Por que isso importa
Escolha o tipo de substituto certo para isolamento, velocidade e previsibilidade. Este guia organiza o assunto em decisões práticas para planejamento, execução e comunicação de testes.
Uma abordagem prática
- Use stub para respostas controladas, fake para implementação simplificada e mock para interação esperada.
- Evite reproduzir toda a lógica do serviço real.
- Mantenha contratos sincronizados com o provedor.
- Combine doubles com testes de integração reais.
- Escolha o menor nível de simulação que resolve o problema.
Exemplo de aplicação: Escolha uma funcionalidade fictícia, aplique os passos abaixo e registre o motivo de cada cenário. O objetivo não é aumentar a quantidade de testes, mas melhorar a informação que eles entregam.
Erros comuns
- Começar pela ferramenta antes de entender o risco.
- Criar muitos casos semelhantes sem objetivo claro.
- Ignorar dados, ambiente e condições que afetam o resultado.
- Automatizar sem uma mensagem de falha útil.
Checklist de revisão
Conclusão
Mocks, stubs e fakes: diferenças e usos em testes funciona melhor quando a técnica é adaptada ao contexto, revisada com o time e ligada a riscos reais do produto.