Nos testes de cadastro, os problemas mais difíceis de reproduzir nem sempre são e-mails que nunca chegam. Muitas vezes, duas mensagens chegam em uma ordem diferente da ordem de envio: a primeira atrasa, a segunda chega antes e a pessoa abre a mensagem mais recente na caixa, mas digita um código que já foi invalidado. Para identificar esses casos, use um endereço de recebimento novo em cada rodada de teste e registre, ao mesmo tempo, os eventos na página e os recebimentos na caixa de entrada.
Defina o início de cada teste
Antes de enviar, anote o horário do navegador, o ambiente de teste, a conta de cadastro e o endereço de recebimento. Use a caixa de entrada de e-mail temporário para testes para obter um endereço novo; confirme que não há mensagens da rodada anterior e informe o endereço no formulário de cadastro. Não atribua o mesmo endereço a vários casos de teste simultâneos: se os e-mails caírem na mesma lista, será difícil descobrir o que acionou cada um.
A mensagem “Enviado com sucesso” na página não significa necessariamente que o e-mail já foi entregue à pessoa. Ela pode indicar apenas que a solicitação do front-end foi concluída ou que a mensagem entrou na fila. Observe quatro momentos separadamente: quando a pessoa clica em enviar, quando a página confirma o sucesso, quando o e-mail aparece na caixa de entrada e quando a pessoa realmente o abre. Se a equipe tiver acesso aos logs do servidor, também pode registrar quando o serviço de e-mail aceitou a solicitação. Mas não misture o horário dos logs internos com o fuso horário local da pessoa no mesmo campo.
Registre envio e recebimento na mesma tabela
Um registro de teste básico deve incluir o número da solicitação, a ação realizada, o horário da ação, o assunto do e-mail, o horário em que apareceu na caixa de entrada, a validade informada no corpo da mensagem e a solicitação correspondente ao código digitado. Defina a precisão dos horários conforme as necessidades do sistema; em casos de reenvio com intervalo de segundos, registre pelo menos os segundos. Mantenha os registros somente em um ambiente de teste controlado e não publique códigos de verificação em chamados abertos.
| Horário local | Ação ou evento observado | O que verificar |
|---|---|---|
| 10:00:00 | Solicitação A: primeiro envio do código de verificação | O botão de envio é desativado imediatamente? |
| 10:00:08 | A página permite tentar novamente ou avançar para a próxima etapa | O tempo de espera corresponde ao envio real? |
| 10:00:45 | Solicitação B: clique em reenviar | O código anterior deve ser invalidado? |
| 10:00:48 | O e-mail de B chega primeiro | A pessoa consegue identificar qual é o e-mail mais recente? |
| 10:01:02 | O e-mail de A chega depois | A mensagem de erro ao digitar o código antigo é clara? |
O objetivo não é exigir que o serviço entregue mensagens em uma ordem específica, mas reunir evidências para investigar falhas. Se a interface ordenar apenas pelo horário de chegada, A pode parecer o código mais recente. Anote os assuntos das duas mensagens, as instruções no corpo e os campos de horário do e-mail; depois, verifique se o produto deixa claro que “somente o código mais recente é válido”.
O que testar ao reenviar
Cliques repetidos durante o tempo de espera
Primeiro, verifique se o botão é desativado e se o tempo restante é exibido. Durante a espera, clique várias vezes ou pressione Enter rapidamente e observe se isso gera um único e-mail ou vários. Em dispositivos móveis, teste se alternar para outro aplicativo e voltar reinicia a contagem. O tempo exibido deve corresponder ao momento em que o envio é realmente liberado.
O e-mail anterior chega depois do mais recente
Valide os códigos dos e-mails A e B, um de cada vez, e registre o resultado esperado e a mensagem exibida para cada um. Não presuma que todos os sistemas invalidam o código antigo assim que um novo é enviado: consulte primeiro as regras do produto e escreva as verificações de acordo com elas. Mais importante ainda, a pessoa precisa conseguir identificar qual e-mail corresponde ao campo de código atual.
Limite do prazo de validade
O início da contagem — no envio ou no recebimento — depende das regras do aplicativo. Se o corpo do e-mail disser que o código vale por dez minutos, teste tanto antes quanto depois do limite. Se a mensagem só chegar após um atraso na fila, o tempo efetivamente disponível pode ser bem menor do que o prometido. Registre os horários e as mensagens exibidas na página para evitar anotações vagas como “às vezes expira”.
Se o e-mail não chegar, descubra primeiro em que etapa houve a falha
Confira se o endereço copiado para o formulário está completo e sem espaços e se o formulário realmente aceitou o valor. Depois, atualize manualmente a caixa de entrada e confirme se o endereço atual foi trocado ou expirou. Se o provedor disponibilizar logs de entrega, verifique se aceitou a solicitação de envio. O fato de a pessoa não ver o e-mail, por si só, não prova que houve uma falha na caixa de entrada. Alguns serviços podem rejeitar domínios de e-mail descartável; isso é uma política de entrada, não um atraso na entrega.
Os novos endereços são válidos por padrão por 3 horas. Para testes de regressão mais longos, comece usando o planejador de validade para estimar a janela de trabalho. Se precisar consultar o e-mail de cadastro no dia seguinte, não use uma caixa de teste que será apagada; prefira um alias de encaminhamento permanente ou um endereço de teste controlado pela equipe. Para cobrir cenários como cadastro normal, código inválido e conta duplicada, siga o checklist de testes de cadastro passo a passo.
O que incluir ao encaminhar a linha do tempo para a equipe de desenvolvimento
Informe o ambiente, uma versão anonimizada do endereço de teste, o número da solicitação, o horário de cada evento, o assunto real do e-mail e o comportamento esperado. Nas capturas de tela, mantenha apenas os elementos da interface necessários para investigar o problema; não compartilhe publicamente códigos de verificação, endereços completos nem links de ativação. Se o problema puder ser reproduzido de forma consistente, detalhe “qual reenvio, após quanto tempo, qual e-mail chegou primeiro e qual código funcionou”. Isso ajuda muito mais a investigar a fila e a atualização de estado do que dizer apenas “o e-mail demorou”.
Mantenha cada rodada de testes dentro de uma janela de tempo controlável e use um endereço novo a cada rodada. Assim, mesmo que a conclusão seja que houve um atraso de terceiros, você poderá explicar à equipe o que foi observado e o que ainda não foi comprovado.
Comece registrando um e-mail novo
Use um endereço exclusivo para testar o envio e o reenvio; depois, compare a ordem de chegada com a linha do tempo.
Abrir caixa de entrada de teste