email validation testing
O tutorial de hoje é sobre como testar a funcionalidade de e-mail de qualquer aplicativo.
Na maioria das aplicações web e móveis, validar o recurso de e-mail é considerado uma das partes mais importantes do teste, para garantir a qualidade no componente de e-mail, bem como em outros componentes do sistema.
Os e-mails acionados em diferentes cenários são considerados validados verificando todos os seus componentes, que incluem um modelo de e-mail, links / botões nos campos E-mail, De, Para, Cc, Cco, Anexos, Conteúdo conforme notificação de e-mail, etc.
O que você aprenderá:
- Por que precisamos do teste de email?
Por que precisamos do teste de email?
Cada componente do sistema (aplicativos Web / Mobile) pode ter diferentes finalidades para enviar e-mails. Integração entre o (s) componente (s) e o e-mail desempenha um papel vital em alcançar o usuário final com notificações adequadas. Qualquer negligência na validação deste recurso levará a mal-entendidos, má reputação dos clientes, hacking, etc.
Por exemplo , imagine uma situação em que um usuário recebeu um e-mail para redefinir a senha. E se o link / botão Redefinir senha ou o URL fornecido para copiar e colar em um navegador não estiver funcionando? A única opção que resta aqui é entrar em contato com o suporte ao cliente, o que pode se tornar uma coisa entediante ou imaginar uma situação em que o usuário continue recebendo um e-mail diário sobre a data de vencimento para pagamento de contas de 10-15 dias antes ou receba um lembrete após a data de vencimento é passado. - Irritante não é ??
Existem muitos cenários em que os e-mails se tornaram parte integrante de nossa vida, pois têm o objetivo de manter o usuário atualizado com informações precisas.
Cenários comuns em tempo real e pontos de validação para e-mails
Os pontos de validação no teste de e-mails variam de tipo para tipo e, novamente, de aplicativo para aplicativo. Normalmente, todos os e-mails devem ser validados para o modelo (que inclui logotipo do aplicativo, nome do aplicativo, endereçamento ao usuário, conteúdo do rodapé - Copyright, detalhes de suporte ao cliente), data e carimbo de data / hora para diferentes fusos horários.
Aqui, discutiremos alguns tipos comuns de e-mail que quase todos conhecem (todos os pontos de validação fornecidos a seguir são a verificação básica que o testador deve realizar enquanto testa os e-mails do aplicativo).
# 1) Emails de ativação
Quando um usuário se cadastra em um aplicativo pela primeira vez, ele precisa ativar a conta clicando no link de ativação enviado por e-mail. Isso também verifica se o endereço de e-mail fornecido pelo usuário é válido e acessível.
Os pontos de validação são os seguintes:
- Link ou botão de ativação - Clicar nele deve:
- Leve o usuário à página do respectivo aplicativo com conta de usuário conectada
- A conta de e-mail do usuário deve ser verificada automaticamente se a página do aplicativo for acessada com sucesso por e-mail
- Duração - verifique a duração dentro da qual o link deve ser clicado e verificado.
- Verifique dentro da duração especificada
- Tente verificar depois que a duração tiver passado - A conta não deve ser ativada e o e-mail deve permanecer não verificado
# 2) Esqueci a senha e-mails
Quando um usuário esquece a senha para fazer o login no aplicativo, o fluxo de esquecimento da senha pode ser realizado para receber um e-mail com link para redefinir a senha (recurso varia de aplicativo para aplicativo. Este é o geral).
Os pontos de validação são os seguintes:
- Link de redefinição de senha:
- Clicar nele deve levar o usuário à página do respectivo aplicativo para redefinir a senha
- Alguns aplicativos solicitarão que o usuário responda a perguntas de segurança antes de exibir a página de redefinição de senha, e alguns terão perguntas de segurança integradas à própria página de redefinição de senha, e alguns não terão esse recurso.
- Se o usuário redefinir a senha com sucesso, o link no e-mail de senha esquecida que foi recebido deve ser desativado e não funcional
- Se o usuário cancelar o fluxo de redefinição de senha, o link no e-mail de senha esquecida que foi recebido deve permanecer ativado
- Duração - Verifique a duração dentro da qual o link deve ser clicado para redefinição de senha
- Clique no link e redefina a senha com sucesso dentro da duração especificada
- Tente clicar no link após a duração ter passado - o link deve ser desativado e expirado
melhor ideia python para windows 10
# 3) Notificações de data de vencimento
Isso é para lembrar o usuário sobre a ação a ser executada em um determinado número de dias. Normalmente trata-se do pagamento de contas, atuando sobre itens pendentes (exemplo: aceitar ou rejeitar o convite para algum evento em determinado número de dias, envio de formulários, etc.).
Os pontos de validação são os seguintes:
- Número de dias de vencimento / data de vencimento
- Se o e-mail notificar sobre um número de dias de vencimento, o número deve ser zero ou mais, zero dias deve ser a data atual de vencimento. Não deve ser em números negativos. Se o e-mail notificar sobre uma data de vencimento (data do calendário), a data deve ser a atual ou a futura.
- Tipo de ação
- Verifique qual é o tipo de ação necessária. Deve indicar muito claramente que tipo de ação o usuário deve realizar. Seja o pagamento de contas, envios, feedbacks, etc.
# 4) Notificações em atraso
Isso é para informar o usuário que a data de vencimento já passou. Isso geralmente é para informar ao usuário que ele / ela não tomou nenhuma providência sobre os itens dentro da data de vencimento.
- Número de dias vencidos
- Verifique se o número de dias vencidos deve ser um ou mais. Nunca deve ser zero ou números negativos
- Frequência
- Poucos aplicativos terão a possibilidade de personalizar e-mails vencidos a serem enviados diariamente / semanalmente / mensalmente, após o vencimento, até que o usuário conclua a ação. Poucos aplicativos terão a notificação padrão a ser enviada apenas uma vez após a data de vencimento.
# 5) Assinaturas
Isso varia de acordo com os requisitos do usuário. O usuário pode selecionar uma das seguintes assinaturas Diárias, Semanais, Bimestrais ou Mensais. Isso geralmente será para boletins informativos, atualizações, ofertas, etc.
- Frequência
- Os emails devem ser enviados de acordo com a seleção do usuário para uma assinatura. Se for Diariamente, o e-mail de assinatura deve ser enviado apenas uma vez por dia. Se semanalmente, então uma vez por semana. E continua ...
- Links
- Todos os links no e-mail devem navegar para a página respectiva do aplicativo. Se o e-mail for para atualizações, o link deve redirecionar para a página onde as atualizações devem ser exibidas. Se o e-mail for para ofertas, o link deve redirecionar para a página Ofertas do aplicativo. Depende do tipo de assinatura que o usuário selecionou.
# 6) Formulários
Emails aqui pretende que o usuário forneça feedback por meio de formulários / link para formulários. Os pontos de validação são os seguintes:
- Links
- O link no e-mail deve redirecionar o usuário para a página de envio do formulário do aplicativo, de acordo com o tipo de formulário que o usuário deve enviar
- Uma vez enviado, clicar no link novamente deve notificar o usuário que o formulário já foi enviado. Não deve permitir que o usuário reenvie o formulário
# 7) Emails de confirmação
Os emails aqui são para notificar o usuário sobre a confirmação da ação realizada. Normalmente são as confirmações de reserva, confirmações de pedido, confirmações de consulta, etc.
Os pontos de validação são os seguintes:
- Detalhes de confirmação:
- O número do pedido / número da reserva deve estar correto e corresponder ao número exibido na IU do aplicativo. Por ser o identificador para rastrear os pedidos / reservas, deve ser único (a ser validado no backend - DB) em toda a aplicação. Nenhum pedido / reserva deve compartilhar o mesmo identificador.
- Junto com o número, ele também deve ser validado para o tipo de pedido, informações do usuário, endereço de cobrança, endereço de entrega e preço. Todas as informações devem ser exatamente semelhantes às que o usuário forneceu na IU do aplicativo.
- Links:
- Um link no e-mail deve levar o usuário à página de detalhes do pedido na IU do aplicativo. Deve haver correspondência exata entre as informações no e-mail e na IU do aplicativo
# 8) Transcrição do bate-papo
Aqui, um usuário recebe toda a transcrição do bate-papo como e-mail. Isso geralmente ocorre quando o chat ao vivo com o suporte ao cliente é encerrado.
Os pontos de validação são como abaixo
- Detalhes
- Verifique o nome da pessoa que forneceu suporte online. Verifique se todo o bate-papo está presente no e-mail com os detalhes do remetente para cada entrada de bate-papo (nome da pessoa, data e hora em que a mensagem de bate-papo foi enviada, etc.)
# 9) Emails com anexo
O usuário recebe e-mails com anexo. Os anexos podem ser protegidos / desprotegidos por senha. Geralmente, são as declarações de domínios financeiros, Contrato de Licença do Usuário Final para referência, Termos e Condições para referência, etc., isso novamente varia de aplicativo para aplicativo.
Os pontos de validação são os seguintes:
- Tipo de anexo
- Os tipos de arquivo válidos devem ser enviados como um anexo. Todos os anexos abertos devem passar por uma verificação de vírus antes de fazer o download / abrir. Isso novamente pode ser personalizado no nível do aplicativo no back-end, como verificação de vírus a ser executada apenas durante o download, apenas ao abrir, para baixar e abrir.
- Os anexos protegidos por senha devem ser baixados sem solicitar a senha. Mas ao abri-lo a partir do próprio e-mail ou ao abrir a cópia baixada, deve sempre pedir a senha. As entradas de senha incorretas aqui serão indefinidas, pois a cópia local não pode ser rastreada online para bloquear o anexo
Tipos de Emails
O tipo de e-mail pode ser HTML (colorido e atraente para os usuários, que interessa ao usuário ler os e-mails na íntegra) ou Texto simples (apenas um texto).
faça um endereço de e-mail temporário falso
HTML é o mais preferido e geralmente definido como padrão em quase todos os aplicativos no backend. Se necessário, os aplicativos podem optar por enviar e-mails de texto simples aos usuários, novamente, isso requer alterações no backend.
Pontos de acionamento de emails:
Os emails podem ser enviados imediatamente ou como resumo / lote. Emails imediatos são acionados pela ação do usuário. Geralmente, serão e-mails de ativação, e-mails de redefinição de senha, transcrições de bate-papo, e-mails de confirmação, etc., ou seja, e-mails de resumo / lote são acionados com base nas configurações no back-end do aplicativo.
Os pontos de acionamento de e-mail serão definidos para acionar em um momento específico ( por exemplo 3rddia de cada semana às 12h). Geralmente, são as declarações de domínios financeiros (extratos bancários), notificação de vencimento de contas, notificações de atraso, assinaturas, etc.,
Bouncebacks:
É um cenário muito comum que os e-mails sejam devolvidos quando enviados para um endereço de e-mail inválido. Normalmente, o endereço de e-mail que está desativado / não está mais em uso e nem existe - são os candidatos que voltam.
O servidor geralmente tenta, por um determinado número de vezes, enviar e-mail para o endereço pretendido. Quando ele não chega ao endereço de e-mail pretendido, ele é devolvido e fará uma entrada no servidor para a sua falha. Haverá um servidor diferente para manter esse tipo de atividades e geralmente são chamados de servidores de recuperação. Pode haver vários motivos para um email falhar ao chegar ao usuário.
Abaixo estão alguns outros pontos de falha:
qual é o melhor adblock para cromo
- O servidor de e-mail está fora do ar por um longo tempo
- O algoritmo para encontrar uma rota curta para chegar ao usuário não está funcionando corretamente e leva muito tempo para chegar ao usuário, nessa altura talvez já tivesse ultrapassado o tempo especificado definido para chegar ao usuário. Isso geralmente é chamado de aumento do número de saltos
- O domínio de e-mail do usuário está inativo por um longo tempo
- A conta do usuário para o aplicativo não está ativada para receber e-mails
Escopo de localização para teste de e-mails
Quando o aplicativo oferece suporte a vários idiomas, o suporte deve se estender para e-mails também.
Todos os e-mails enviados devem estar no idioma do perfil do usuário. Se um usuário definiu o inglês como idioma do perfil, todos os e-mails enviados a ele devem ser em inglês. Se o idioma do perfil do usuário for francês, todos os e-mails enviados a ele devem ser em francês. O idioma do perfil do usuário pode ser uma configuração única ou pode ser alterado conforme e quando necessário, o que depende das configurações do aplicativo.
O e-mail deve ser enviado no idioma que o usuário possui no momento em que é acionado.
Os pontos de validação comuns para o teste de localização dos e-mails são os seguintes:
- Linha de assunto
- Corpo do Email
- Conteúdo - texto do corpo
- Nome do link / nome do botão
- Informações sobre direitos autorais
- Detalhes de suporte ao cliente
Padrão / Personalização de Emails
Os e-mails podem ser personalizados no back-end.
Por exemplo , poucos aplicativos oferecem suporte ao usuário para personalizar e-mails quando eles estão sendo enviados. O usuário pode alterar aqui a linha de Assunto e / ou corpo do e-mail para sua conveniência ou para a finalidade de reconhecer facilmente. Nesse caso, o teste completo deve ser feito pela equipe de teste, pois as chances de invasão são altas.
O teste deve ser executado para injeções - enviar código HTML, código Java, SQL, etc. Todos estes devem falhar para aumentar os níveis de segurança. Se o aplicativo não suportar a personalização de e-mails, todos os e-mails enviados seguirão o assunto / corpo padrão definido por um aplicativo.
Conclusão
Testar e-mails é uma atividade importante, pois a maioria dos componentes do aplicativo são integrados a essa funcionalidade.
Deve ser o apoio e o esforço de toda a equipe para testar completamente a funcionalidade de e-mail do aplicativo. Isso deve ser bem planejado muito antes do início do teste real e deve ir de mãos dadas durante o teste de cada componente / componente associado.
O teste de email deve ter casos de teste separados escritos para cada tipo de email cobrindo todos os aspectos a serem testados. Isso deve ser realizado em todos os tipos de teste Teste de regressão, teste Adhoc, teste de localização, teste UAT e teste de produção.
Qualquer coisa que dê errado no e-mail em tempo real deixará uma má impressão no aplicativo, nos clientes e, eventualmente, será encaminhado para os testadores desse aplicativo. Portanto, as validações de e-mail são uma atividade muito importante e muito necessária em testes de software.
Sobre o autor: Esta postagem foi escrita pela autora do STH, Nandini K. Ela tem mais de 7 anos de experiência em teste de software, principalmente em testes de aplicativos da web.
Deixe-nos saber se você tiver alguma dúvida / sugestão.
Leitura recomendada
- As 10 MELHORES ferramentas de teste de e-mail para sua próxima campanha de e-mail de sucesso
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- Diferença entre Desktop, Teste de Servidor Cliente e Teste da Web
- Guia de teste de segurança de aplicativos da Web
- Os 10 principais serviços de verificação e validação de e-mail em 2021
- Teste de aplicativos - Noções básicas de teste de software!
- Instalando seu aplicativo no dispositivo e comece a testar no Eclipse
- Download do e-book do Testing Primer