Um adaptador de e‑mail impede que casos de teste dependam do formato de resposta de um único provedor. Ele deve expor um contrato pequeno enquanto preserva informações suficientes para diagnosticar falhas.
Defina quatro operações
- Prepare: estabelecer um destinatário sintético permitido e registrar o contexto do teste.
- Wait: encontrar uma mensagem que corresponda ao destinatário, propósito e janela de solicitação dentro de um prazo.
- Read: obter o conteúdo necessário para a asserção sem registrar segredos.
- Clean up: remover artefatos de teste onde for suportado e registrar qualquer limpeza incompleta.
Retorne resultados distintos
| Resultado | Significado |
|---|---|
| Correspondido | Uma mensagem satisfaz as regras de correlação deste teste. |
| Tempo esgotado | Nenhuma mensagem correspondente foi observada antes do prazo. |
| Acesso rejeitado | As credenciais ou o acesso à caixa de entrada não puderam ser validados. |
| Provedor indisponível | O serviço de caixa de correio não pôde concluir a operação. |
Teste o adaptador de forma independente
Use fixtures para verificar paginação, resultados vazios, tentativas de nova tentativa, respostas malformadas e cancelamento. Mantenha um pequeno teste de integração ao vivo, com taxa limitada, para comportamentos que fixtures não podem estabelecer. Siga o contrato de API atual do provedor em vez de raspar a interface da caixa de entrada.
Mantenha as asserções do produto acima do adaptador
O teste da aplicação deve decidir se uma mensagem de boas‑vindas tem o destino correto ou se um fluxo de verificação altera o estado pretendido. O adaptador não deve declarar silenciosamente esses resultados de negócios como bem‑sucedidos apenas porque um e‑mail chegou.
Consulte a documentação da API CleanTempMail atual antes de implementar seu adaptador, incluindo autenticação e limites de uso.