Teste de cadastro / Linha do tempo de e-mails

Como testar a ordem de chegada dos e-mails de cadastro?

Quando alguém diz “não recebi o código de verificação”, talvez o e-mail anterior só tenha atrasado. Não teste apenas se o e-mail chegou ou não: monte uma linha do tempo para cada solicitação e cada mensagem recebida.

Notas práticasCerca de 7 min

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.

Exemplo: registre na ordem observada, não na ordem esperada
Horário localAção ou evento observadoO que verificar
10:00:00Solicitação A: primeiro envio do código de verificaçãoO botão de envio é desativado imediatamente?
10:00:08A página permite tentar novamente ou avançar para a próxima etapaO tempo de espera corresponde ao envio real?
10:00:45Solicitação B: clique em reenviarO código anterior deve ser invalidado?
10:00:48O e-mail de B chega primeiroA pessoa consegue identificar qual é o e-mail mais recente?
10:01:02O e-mail de A chega depoisA 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