web application testing complete guide
Um guia completo de teste de aplicativos da Web: como testar um site
Todos nós temos que concordar que, no mundo competitivo e em constante mudança de hoje, a Internet se tornou parte integrante de nossas vidas.
Atualmente, muitos de nós tomamos decisões pesquisando informações na Internet, portanto, hospedar um site não é mais opcional, mas obrigatório para todos os tipos de negócios. É o primeiro passo para se tornar e se manter relevante no mercado.
Só ter um site não é suficiente. É necessária uma organização para desenvolver um site informativo, acessível e amigável. Para manter todas essas qualidades, o site deve ser bem testado, e esse processo de teste de um site é conhecido como teste da web.
O que você aprenderá:
- O que é teste da Web?
- Listas de verificação de teste da web
- Tipos de teste da web
- Pontos a serem considerados ao testar um site
- Cenários de teste de amostra para testar um aplicativo da web
- Perguntas frequentes sobre testes da web
- O site está funcionando conforme o esperado?
- O usuário final achará o site fácil de navegar?
- O site está acessível em diferentes dispositivos dos usuários finais?
- O site é seguro o suficiente?
- O desempenho do site está à altura da marca?
- Os dados inseridos em um site são armazenados com precisão e persistem durante as sessões?
- Conclusão
- Leitura recomendada
O que é teste da Web?
O teste da Web é uma prática de teste de software para testar sites ou aplicativos da Web quanto a possíveis bugs. É um teste completo de aplicativos baseados na web antes de colocá-los no ar.
Um sistema baseado na web precisa ser verificado completamente de ponta a ponta antes de entrar em operação para os usuários finais.
Ao realizar o teste do site, uma organização pode ter certeza de que o sistema baseado na web está funcionando corretamente e pode ser aceito por usuários em tempo real.
O design e a funcionalidade da IU são os capitães dos testes de sites.
Listas de verificação de teste da web
1) Teste de Funcionalidade
2) Testando usabilidade
3) Teste de interface
4) Teste de compatibilidade
5) Teste de performance
6) Teste de segurança
Ferramentas recomendadas para praticar os conceitos de teste da web mencionados nesta página:
# 1) LoadNinja
O LoadNinja permite que você teste o carregamento de seu aplicativo da web com navegadores reais em escala, usando scripts de teste que podem ser reproduzidos imediatamente após a gravação, produzindo dados de desempenho baseados em navegador acionáveis para isolar problemas e depurar erros em tempo real.
# 2) LambdaTest
LambdaTest é uma plataforma escalonável de teste cross-browser baseada em nuvem projetada para oferecer todos os testes de sites e aplicativos da web necessários para a infraestrutura em nuvem.
A plataforma LambdaTest ajuda a garantir que os elementos do seu aplicativo da web (como JavaScript, CSS, HTLM5, Vídeo ... etc.) Sejam processados perfeitamente em cada desktop e navegador da web móvel com suporte para testes manuais, visuais e automatizados. Com o LambdaTest, você pode acessar mais de 2.000 combinações de navegadores de desktop e móveis na nuvem.
=> Visite o site do LambdaTest# 1) Teste de Funcionalidade
Teste para - todos os links em páginas da web, conexão de banco de dados, formulários usados para enviar ou obter informações do usuário nas páginas da web, teste de cookies, etc.
Confira todos os links:
- Teste os links de saída de todas as páginas para o domínio específico em teste.
- Teste todos os links internos.
- Teste os links que saltam na mesma página.
- Links de teste são usados para enviar e-mails para admin ou outros usuários de páginas da web.
- Teste para ver se há páginas órfãs.
- Por fim, a verificação de links inclui a verificação de links quebrados em todos os links mencionados acima.
Formulários de teste em todas as páginas:
Os formulários são parte integrante de qualquer site. Os formulários são usados para receber informações dos usuários e interagir com eles. Então, o que deve ser verificado nesses formulários?
- Primeiro, verifique todas as validações em cada campo.
- Verifique os valores padrão nos campos.
- Entradas erradas nos formulários para os campos nos formulários.
- Opções para criar formulários, se houver, excluir, visualizar ou modificar os formulários.
Vamos dar um exemplo do projeto de mecanismo de pesquisa no qual estou trabalhando atualmente. Neste projeto, temos as etapas de inscrição de anunciantes e afiliados. Cada etapa de inscrição é diferente, mas depende das outras etapas.
Portanto, o fluxo de inscrição deve ser executado corretamente. Existem diferentes validações de campo, como IDs de e-mail, validações de informações financeiras do usuário, etc. Todas essas validações devem ser verificadas em testes manuais ou automatizados da web.
Teste de Cookie:
Cookies são pequenos arquivos armazenados na máquina do usuário. Eles são usados basicamente para manter a sessão - principalmente as sessões de login. Teste o aplicativo ativando ou desativando os cookies nas opções do seu navegador.
Teste se os cookies estão criptografados antes de gravar na máquina do usuário. Se você estiver testando cookies de sessão (ou seja, cookies que expiram após o término da sessão), verifique as sessões de login e as estatísticas do usuário após o término da sessão. Verifique o efeito na segurança do aplicativo excluindo os cookies. (Em breve, também escreverei um artigo separado sobre teste de cookies)
Valide o seu HTML / CSS:
Se você está otimizando seu site para mecanismos de pesquisa, a validação de HTML / CSS é a mais importante. Valide principalmente o site para erros de sintaxe HTML. Verifique se o site pode ser rastreado para diferentes mecanismos de pesquisa.
Teste de banco de dados:
A consistência dos dados também é muito importante em um aplicativo da web. Verifique a integridade dos dados e erros enquanto edita, exclui, modifica os formulários ou executa qualquer funcionalidade relacionada ao banco de dados.
Verifique se todas as consultas ao banco de dados são executadas corretamente, os dados são recuperados e também atualizados corretamente. Mais sobre teste de banco de dados pode ser uma carga no banco de dados, vamos abordar isso em carga da web ou teste de desempenho abaixo.
Ao testar a funcionalidade dos sites, o seguinte deve ser testado:
Links
eu. Links Internos
ii. Links externos
iii. Links de correio
4. Links quebrados
Formulários
eu. Validação de campo
ii. Mensagem de erro para entrada errada
iii. Campos opcionais e obrigatórios
Base de dados
O teste será feito na integridade do banco de dados.
# 2) Teste de usabilidade
O teste de usabilidade é o processo pelo qual as características de interação humano-computador de um sistema são medidas e os pontos fracos são identificados para correção.
• Facilidade de aprendizado
• Navigation
• Satisfação subjetiva do usuário
• Aparência geral
Teste de navegação:
Navegação significa como um usuário navega nas páginas da web, diferentes controles como botões, caixas ou como o usuário usa os links nas páginas para navegar em diferentes páginas.
O Teste de Usabilidade inclui o seguinte:
- O site deve ser fácil de usar.
- As instruções fornecidas devem ser muito claras.
- Verifique se as instruções fornecidas são perfeitas para atender a sua finalidade.
- O menu principal deve ser fornecido em cada página.
- Deve ser consistente o suficiente.
Verificação de conteúdo:
O conteúdo deve ser lógico e fácil de entender. Verifique se há erros de ortografia. O uso de cores escuras incomoda os usuários e não deve ser utilizado no tema do site.
exemplo de tabela hash c ++
Você pode seguir algumas cores padrão que são usadas para páginas da web e construção de conteúdo. Estes são os padrões comumente aceitos, como o que mencionei acima sobre cores, fontes, molduras, etc.
O conteúdo deve ser significativo. Todos os links de texto âncora devem estar funcionando corretamente. As imagens devem ser colocadas corretamente com os tamanhos adequados.
Estes são alguns dos padrões básicos importantes que devem ser seguidos no desenvolvimento web. Sua tarefa é validar tudo para o teste de IU.
Outras informações do usuário para ajuda do usuário:
Assim como a opção de pesquisa, o mapa do site também ajuda com arquivos, etc. O mapa do site deve estar disponível com todos os links em sites com uma visualização em árvore de navegação adequada. Verifique todos os links no mapa do site.
A opção “Pesquisar no site” ajudará os usuários a encontrar as páginas de conteúdo que procuram de forma fácil e rápida. Todos esses itens são opcionais e, se presentes, devem ser validados.
# 3) Teste de interface
No teste da web, a interface do lado do servidor deve ser testada. Isso pode ser feito verificando se a comunicação é feita corretamente. A compatibilidade do servidor com software, hardware, rede e banco de dados deve ser testada.
As principais interfaces são:
- Servidor web e interface de servidor de aplicativos
- Servidor de aplicativos e interface do servidor de banco de dados.
Verifique se todas as interações entre esses servidores são executadas e se os erros são tratados adequadamente. Se o banco de dados ou o servidor da web retornar uma mensagem de erro para qualquer consulta do servidor de aplicativos, o servidor de aplicativos deve capturar e exibir essas mensagens de erro apropriadamente para os usuários.
Verifique o que acontece se o usuário interromper qualquer transação no meio? Verifique o que acontece se a conexão com o servidor da web for reiniciada no meio?
# 4) Teste de Compatibilidade
A compatibilidade do seu site é um aspecto de teste muito importante. Veja qual teste de compatibilidade deve ser executado:
- Compatibilidade do navegador
- Compatibilidade do sistema operacional
- Navegação móvel
- Opções de impressão
Compatibilidade do navegador:
Em minha carreira de teste da web, experimentei isso como a parte mais influente dos testes de sites.
Alguns aplicativos dependem muito dos navegadores. Navegadores diferentes têm configurações e definições diferentes com as quais sua página da web deve ser compatível.
A codificação do seu site deve ser compatível com uma plataforma para vários navegadores. Se você estiver usando scripts java ou chamadas AJAX para funcionalidade de interface do usuário, realizando verificações de segurança ou validações, dê mais ênfase ao teste de compatibilidade do navegador de seu aplicativo da web.
Teste os aplicativos da web em navegadores diferentes, como navegadores Internet Explorer, Firefox, Netscape Navigator, AOL, Safari, Opera com versões diferentes.
OS Compatibility:
Algumas funcionalidades do seu aplicativo da web podem não ser compatíveis com todos os sistemas operacionais. Todas as novas tecnologias usadas no desenvolvimento da web, como designs gráficos e chamadas de interface, como diferentes APIs, podem não estar disponíveis em todos os sistemas operacionais.
Portanto, teste seu aplicativo da web em diferentes sistemas operacionais como Windows, Unix, MAC, Linux, Solaris com diferentes sabores de sistema operacional.
Navegação móvel:
Estamos na nova era da tecnologia. Portanto, no futuro, a navegação móvel será demais. Teste suas páginas da web em navegadores móveis. Problemas de compatibilidade podem estar presentes em dispositivos móveis também.
Opções de impressão:
Se você estiver fornecendo opções de impressão de página, certifique-se de que as fontes, o alinhamento da página, os gráficos da página, etc., sejam impressos corretamente. As páginas devem caber no tamanho do papel ou de acordo com o tamanho mencionado na opção de impressão.
# 5) Teste de desempenho
O aplicativo da web deve suportar uma carga pesada. O teste de desempenho da Web deve incluir:
- Teste de carga na web
- Web Stress Testing
Teste o desempenho do aplicativo em diferentes velocidades de conexão com a Internet.
Teste de carga na web : Você precisa testar se muitos usuários estão acessando ou solicitando a mesma página. O sistema pode sustentar o tempo de pico de carregamento? O site deve lidar com muitas solicitações de usuário simultâneas, grandes dados de entrada de usuários, conexão simultânea ao banco de dados, carga pesada em páginas específicas, etc.
Teste de estresse na web: Geralmente, o estresse significa esticar o sistema além de seus limites especificados. O teste de estresse da web é realizado para quebrar o site, dando estresse e é verificado como o sistema reage ao estresse e como ele se recupera de travamentos. O estresse é geralmente dado em campos de entrada, áreas de login e inscrição.
No desempenho da web, testar a funcionalidade do site em diferentes sistemas operacionais e diferentes plataformas de hardware é verificado para erros de vazamento de memória de software e hardware.
O teste de desempenho pode ser aplicado para entender a escalabilidade do site ou para comparar o desempenho no ambiente de produtos de terceiros, como servidores e middleware para compra potencial.
Velocidade de conexão
Testado em várias redes como dial-up, ISDN, etc.
Carregar
eu. Qual é o não. de usuários por vez?
ii. Verifique se há picos de carga e como o sistema se comporta
iii. Uma grande quantidade de dados acessados pelo usuário
Estresse
eu. Carga Contínua
ii. Desempenho de memória, CPU, manuseio de arquivos, etc.
# 6) Teste de segurança
A seguir estão alguns dos casos de teste para teste de segurança da web:
- Teste colando o URL interno diretamente na barra de endereço do navegador sem fazer login. As páginas internas não devem abrir.
- Se você estiver conectado com nome de usuário e senha e navegando nas páginas internas, tente alterar as opções de URL diretamente. Ou seja Se você estiver verificando algumas estatísticas do site do editor com ID do site do editor = 123. Tente alterar diretamente o parâmetro do ID do site da URL para um ID de site diferente que não esteja relacionado ao usuário conectado. O acesso deve ser negado a este usuário para visualizar as estatísticas de outras pessoas.
- Tente algumas entradas inválidas em campos de entrada como nome de usuário de login, senha, caixas de texto de entrada, etc. Verifique a reação do sistema a todas as entradas inválidas.
- Os diretórios e arquivos da Web não devem ser acessados diretamente, a menos que tenham a opção de download.
- Teste o CAPTCHA para automatizar logins de script.
- Teste se SSL é usado para medidas de segurança. Se usada, a mensagem adequada deve ser exibida quando os usuários mudam de páginas HTTP: // não seguras para páginas HTTPS: // seguras e vice-versa.
- Todas as transações, mensagens de erro e tentativas de violação de segurança devem ser registradas em arquivos de log em algum lugar do servidor da web.
O principal motivo para testar a segurança de uma web é identificar vulnerabilidades potenciais e, posteriormente, repará-las.
- Digitalização em rede
- Verificação de vulnerabilidade
- Quebra de senha
- Revisão de registro
- Verificadores de integridade
- Detecção de vírus
Tipos de teste da web
Um site é classificado em vários tipos, cerca de 20 tipos. Todos estes estão diminuindo sob o tipo estático e dinâmico. Entre eles, vamos discutir 4 tipos e seus métodos de teste de maneira detalhada. Antes disso, eu só quero marcar esses tipos.
- Teste estático simples de sites
- Teste de aplicativo da web dinâmico
- Teste de site de comércio eletrônico
- Teste de site móvel
# 1) Site estático simples
Um site estático simples exibirá o mesmo conteúdo para todos os visitantes que visitam o site em momentos diferentes. É também conhecido como site informativo. Em um site estático, apenas os desenvolvedores podem fazer alterações também no código. Este tipo de site não terá nenhuma funcionalidade principal e depende puramente do design da IU.
Testar um site estático simples é muito fácil, você deve considerar apenas algumas coisas durante o teste. Alguns deles são mencionados abaixo:
Pontos para lembrar:
# 1) Testar o design da GUI é obrigatório porque um site estático depende exclusivamente dele. Você precisa comparar os arquivos PSD aprovados com a página da web desenvolvida. Verifique se todos os elementos do design devem ser apresentados na página desenvolvida.
#dois) A outra parte do design da GUI é verificar o tamanho da fonte, estilo da fonte, espaçamento e cor em que tudo foi reproduzido.
(Esta imagem explica o problema de alinhamento de espaçamento na visualização da área de trabalho de um site.)
# 3) Em segundo lugar, você precisa verificar os links (links da página) para ver se está funcionando corretamente ou não. Além disso, descobrir se há um link quebrado?
# 4) Verifique a ortografia e o conteúdo em todas as páginas da web, comparando o conteúdo fornecido pelo cliente.
# 5) Em alguns casos, a imagem não é exibida corretamente, pode quebrar ou às vezes a imagem é duplicada, imagens incorretas podem ser exibidas. Tem que ser verificado intensamente. Porque para um site estático, apenas conteúdos e imagens darão vida.
# 6) Verifique a barra de rolagem com cuidado e, por experiência própria, tive problemas com a barra de rolagem. O problema que você enfrentará é a exibição indesejada de rolagem ou a ocultação de rolagem (pode ocultar o conteúdo). Os problemas acima são aplicáveis a scrolls horizontais e verticais.
# 7) Se houver um formulário de contato, verifique se ele está funcionando corretamente, enviando algumas mensagens fictícias.
As coisas a verificar no formulário de contato são:
- A mensagem está sendo enviada corretamente e uma mensagem de sucesso está aparecendo?
- Verifique se o e-mail recebido para a pessoa em questão está no formato adequado, conforme projetado?
- O e-mail de verificação não deve ser enviado para spam como lixo eletrônico?
- Se houver um acionador de e-mail de resposta ativado, verifique se o remetente recebeu o e-mail.
# 8) Verifique se é uma página da web sem erros e valide-a com o validador W3 ou outro software relacionado.
# 9) Algumas coisas constantes a serem verificadas em um site estático,
- Verifique se o favicon está presente na barra de guias
- URL deve conter o título correto da página
- Se houver informações de direitos autorais, elas devem ser exibidas
- Se houver um formulário de contato, Captcha é obrigatório. (Previne lixo eletrônico)
- Verifique a velocidade de carregamento do site. (Um site estático não deve demorar muito para carregar). Se uma imagem GIF for usada durante o carregamento, rastreie sua funcionalidade
Além disso, há coisas enormes que precisam ser testadas no backend de cada site que é teste de sistema , teste de segurança, teste de interface, teste de compatibilidade e teste de desempenho, etc. Para isso, você precisa ter conhecimento técnico. Em um site estático simples, você não encontrará mais funcionalidades se precisar fazer testes de funcionalidade também.
# 2) Aplicativo Web dinâmico (site CMS)
É o tipo em que o usuário pode atualizar e alterar o conteúdo do site regularmente. A partir daqui, usarei a palavra “teste de aplicativo da web” em vez de teste dinâmico de site. O aplicativo da web é um combinação de programação front-end e back-end .
O front-end será HTML e CSS, enquanto o back-end usa linguagens de programação como PHP, Javascript e ASP etc. Com este backend, o usuário / cliente pode adicionar ou alterar o conteúdo do site.
Testar um aplicativo da web não é fácil do que testar um site estático, mas não é muito difícil do que testar um site de comércio eletrônico. O teste de funcionalidade é a coisa mais importante a ser realizada durante o teste de um aplicativo da web. O aplicativo da web pode conter funcionalidades muito complicadas, portanto, o testador precisa ter muito cuidado durante o teste.
Existem dois tipos diferentes de aplicativos da web, um deles em que nenhuma ação será realizada pelo usuário no front-end (ou seja, apenas as alterações no back-end refletirão no front-end) e o outro é que o usuário final trabalhará no front-end -end-se ( por exemplo login, inscrição, assinatura de boletim informativo e outras ações semelhantes). Portanto, o teste deve ser feito de acordo com ele.
Pontos para lembrar:
Os pontos que mencionei no teste estático de sites também devem ser incluídos durante o teste de um aplicativo da web. Além disso, as seguintes coisas devem ser observadas.
# 1) Na seção GUI, a dica é obrigatória para todos os campos e botões, o alinhamento dos campos (espaçamento) deve ser feito corretamente, os campos / botões desabilitados devem estar acinzentados, os campos / botões devem estar no formato padrão como no SRS, a mensagem de erro deve ser exibida se algo der errado, pop-up a mensagem deve ser exibida apenas no centro da página da web, o menu suspenso não deve ser truncado.
A tecla de atalho Tab deve funcionar em todos os campos e muito mais.
#dois) Na seção de funcionalidade, se o seu aplicativo da web tiver funcionalidade de login ou inscrição, verifique o validação de campo obrigatório , validação de formulário (ou seja, os campos de número devem aceitar apenas números, não alfabetos), restrição de caracteres nos campos (ou seja, apenas esses muitos caracteres podem ser inseridos).
Restrição de caracteres especiais e números negativos em campos, testando a funcionalidade de e-mail, testando o upload do documento (ou seja, apenas o tipo de documento especificado pode ser carregado ), funcionalidade de tempo limite, funcionalidade de classificação, javascript está funcionando em navegadores compatíveis etc. devem ser testados.
# 3) Ao chegar à seção de funcionalidade de back-end, teste o upload de imagens para imagens quebradas, texto inserido nos campos está funcionando ou não. A atualização de back-end deve refletir no front-end , teste de banco de dados (ou seja, se você pode adicionar novos campos ou excluir campos indesejados), todas essas coisas devem ser realizadas.
O desempenho não é muito necessário para uma aplicação web (site dinâmico), pois tem muito menos conteúdo. Se precisar, use as ferramentas com as quais está familiarizado. Escolha alguma ferramenta de desempenho online padrão, se quiser fazer testes de desempenho simples.
fila é abstrata
# 3) Site de comércio eletrônico
Um site de comércio eletrônico é um tanto complicado quando comparado aos dois anteriores. O testador precisa ser muito cauteloso ao testar um site de comércio eletrônico. Há coisas enormes a serem verificadas em sites de comércio eletrônico. Acabei de abordar alguns dos meus problemas experientes em testes de sites de comércio eletrônico.
Na seção GUI, você precisa verificar todos os recursos como no SRS e o mesmo com a funcionalidade. A funcionalidade será quase a mesma para todos os sites comerciais.
Em termos de funcionalidade, você precisa verificar todas as páginas, como a página principal (inclui produtos em destaque, exibição de ofertas especiais, detalhes de login, funcionalidade de pesquisa) página de detalhes do produto, página de categoria, colocação de pedido, gateway de pagamento, tudo deve ser testado.
Pontos para lembrar:
# 1) Verifique se o carrinho de compras está sendo atualizado quando você compra ou aumenta a quantidade. Verifique esta funcionalidade em todas as páginas e circunstâncias.
#dois) Verifique se cupons especiais e as ofertas são aplicadas aos pedidos corretos e você vê que o preço com desconto está sendo exibido ou não.
(Esta imagem explica sobre frete grátis e como ele é aplicado na seção de pagamento)
# 3) Às vezes, ao atualizar um único produto, ele será multiplicado considerando o número de variações no produto. Portanto, verifique se o único produto é exibido e suas variações são exibidas corretamente. (Eu enfrentei esse problema)
# 4) Verifique se a opção de filtro está funcionando exatamente. Se a filtragem for feita com base na categoria e no preço escolhidos?
# 5) Durante a inscrição, uma super validação deve ser feita. Apenas o novo usuário pode se inscrever.
# 6) Se um usuário existente adicionou um produto ao carrinho de compras, a seção da lista de desejos durante o login anterior deve ser salva e exibida durante o próximo login também.
# 7) Comparar produtos deve funcionar comparando os produtos com base em algumas especificações atribuídas no back-end.
# 8) Verifique se o conversor de moeda está funcionando bem. Com base no país escolhido, o conversor de moeda deve exibir o preço e as taxas de imposto relevantes.
(Ao escolher o idioma A moeda será convertida, aqui USD é o valor padrão)
# 9) Geralmente, muitos plug-ins são usados em um site de e-commerce (WordPress e similares), você precisa ter muito cuidado. A instalação do plug-in pode entrar em conflito ou afetar qualquer outra funcionalidade importante. Portanto, acompanhe a instalação dos plug-ins e seu uso.
# 10) Verifique se a opção de compartilhamento social está funcionando no produto individual ou não.
#onze) O custo de envio deve ser gerado com base na região selecionada. E verifique também a geração da alíquota. (Pode causar alguns problemas legais, durante a compra pelos usuários finais).
(Nesta imagem, o frete e a taxa de imposto são calculados para a região da França)
# 12) O gateway de pagamento deve funcionar apenas se os detalhes do cartão válido forem fornecidos. A validação deve ser aplicada ao número do cartão e ao número do código CCV. (É melhor manter a validação no próprio campo do número do cartão).
# 13) A geração de e-mail em cada processo durante a compra deve acontecer (inscrição, pedido de produto, pagamento bem-sucedido, pedido cancelado, pedido recebido e outros acionadores de e-mail, se houver).
# 14) Verifique o chat ao vivo com alguns e-mails bobos.
Nota: Geralmente o site de comércio eletrônico não será desenvolvido para compatibilidade móvel e quando chegar à versão móvel, um aplicativo será gerado. Em alguns casos, eles não criarão um aplicativo; em vez disso, será criado um site compatível com dispositivos móveis. Nesses casos, você precisa verificar cuidadosamente para saber se há alguma funcionalidade ausente e desvio de IU.
Esses são alguns dos problemas que enfrentei e observei ao testar um site de comércio eletrônico. Além disso, você precisa verificar todas as coisas gerais relacionadas a um site de comércio eletrônico.
# 4) Site para celular
Em primeiro lugar, vamos ser claros sobre um site para celular. Geralmente as pessoas pensam que um site para celular e um aplicativo para celular são iguais, mas, na realidade, um site para celular é desenvolvido com páginas HTML e pode ser visualizado apenas com uma conexão à Internet.
Mas o aplicativo móvel nada mais é do que um aplicativo que pode ser baixado e usado posteriormente sem uma conexão com a internet. Aqui, muitos de nós ficamos confusos e levantamos uma questão Qual é a diferença entre um site para celular e um site responsivo?
Um site responsivo significa fazer com que o conteúdo se ajuste ao tamanho do dispositivo móvel em vez de criar uma versão, ao passo que um site móvel cria uma nova versão que não é uma versão de reflexão para desktop. No site para celular, você terá apenas páginas limitadas e funcionalidades indesejadas são removidas aqui.
Testar um site para celular é entediante, em vez de outros tipos de site. Ele terá designs separados e você precisará ter cuidado ao testar as funcionalidades.
Pontos para lembrar:
Pontos importantes a serem considerados ao testar um site para celular:
- Normalmente, usaremos um emulador para testar um site móvel e podemos obter resultados ideais, mas sempre prefiro que você teste em dispositivos reais. Eu enfrentei muitos problemas quando testei em dispositivos reais (especialmente dispositivos da Apple). As especificações reais do dispositivo podem entrar em conflito com as páginas da web desenvolvidas.
(Esta imagem explica sobre o teste do simulador e o problema de backline que aparece nele.)
- Os testes de interface e usabilidade são mais importantes, pois não refletem a versão para desktop.
- O desempenho é outro fator importante a ser considerado para testes de sites móveis. Problemas relacionados ao desempenho podem ser rastreados quando você testa em dispositivos reais.
- Verifique se a navegação em links normais da web em um celular está sendo acionada por um link móvel.
- Verifique a rolagem da página, a navegação da página, o truncamento de texto etc. no site móvel.
Melhores ferramentas de teste da web
Há uma grande variedade de ferramentas de teste disponíveis para teste de aplicativos da web.
serviços da web testando perguntas e respostas para entrevistas
=> Verifique esta lista abrangente das ferramentas de teste de aplicativos da Web mais populares.
Pontos a serem considerados ao testar um site
Os sites são essencialmente aplicativos cliente / servidor - com servidores web e clientes de 'navegadores'.
Deve-se levar em consideração as interações entre Páginas HTML, comunicações TCP / IP, conexões com a Internet, firewalls, aplicativos executados em páginas da web (como applets, javascript, aplicativos de plug-in) e aplicativos que são executados no lado do servidor (como scripts CGI, interfaces de banco de dados, aplicativos de registro, geradores de página dinâmica, asp, etc.).
Além disso, há uma grande variedade de servidores e navegadores com várias versões de cada um. Eles incluem diferenças pequenas, mas às vezes significativas, entre eles em termos de variações nas velocidades de conexão, tecnologias que mudam rapidamente e vários padrões e protocolos. O resultado final do teste de sites pode se tornar um grande esforço contínuo.
Cenários de teste de amostra para testar um aplicativo da web
Algumas outras considerações a serem incluídas durante o teste de um site são fornecidas abaixo .
- Qual é a carga esperada no servidor (por exemplo, número de acessos por unidade de tempo)?
- Que tipo de desempenho é necessário em cada condição de carregamento (como tempo de resposta do servidor web, tempos de resposta de consulta de banco de dados)?
- Que tipo de ferramentas serão necessárias para o teste de desempenho (como ferramentas de teste de carga da web, outras ferramentas internas que podem ser adaptadas, ferramentas de download de robôs da web, etc.)?
- Quem é o público-alvo? Que tipo de navegador eles usarão? Que tipo de velocidade de conexão eles usarão? Eles são intra-organizações (provavelmente com altas velocidades de conexão e navegadores semelhantes) ou na Internet (portanto, com uma ampla variedade de velocidades de conexão e tipos de navegador)?
- Que tipo de desempenho é esperado do lado do cliente (por exemplo, quão rápido as páginas devem aparecer, quão rápido as animações, miniaplicativos, etc. devem ser carregados e executados)?
- O tempo de inatividade para manutenção / atualizações de servidor e conteúdo será permitido? Se sim, então quanto?
- Que tipo de segurança (firewalls, criptografia, senhas, etc.) será necessária e o que se espera que faça? Como pode ser testado?
- Quão confiáveis são as conexões de Internet do site necessárias para ser? E como isso afeta o sistema de backup ou os requisitos e testes de conexão redundante?
- Qual processo será necessário para gerenciar as atualizações do conteúdo do site?
- Quais são os requisitos para manter, rastrear e controlar o conteúdo da página, gráficos, links, etc.?
- Qual especificação HTML será seguida? Quão estritamente? Quais variações serão permitidas para navegadores direcionados?
- Haverá algum requisito padrão para a aparência da página e / ou gráficos em um site ou em partes de um site?
- Como os links internos e externos serão validados e atualizados? E com que frequência? isso vai acontecer?
- O teste pode ser feito no sistema de produção ou será necessário um sistema de teste separado?
- Como o cache do navegador, as variações nas configurações de opções do navegador, a variabilidade da conexão dial-up e os problemas de 'congestionamento de tráfego' da Internet no mundo real devem ser contabilizados para o teste?
- Quão extensos ou personalizados são os requisitos de registro e relatório do servidor; são considerados parte integrante do sistema e requerem testes?
- Como programas CGI, miniaplicativos, javascript, componentes ActiveX, etc. devem ser mantidos, rastreados, controlados e testados?
- As páginas devem ter de 3 a 5 telas no máximo, a menos que o conteúdo seja altamente focado em um único tópico. Se for maior, forneça links internos na página.
- Os layouts de página e os elementos de design devem ser consistentes em todo o site para que fique claro para o usuário que ainda está no site.
- As páginas devem ser o mais independentes possível do navegador ou as páginas devem ser fornecidas ou geradas com base no tipo de navegador.
- Todas as páginas devem ter links externos à página; não deve haver páginas sem saída.
- O proprietário da página, a data de revisão e um link para uma pessoa de contato ou organização devem ser incluídos em cada página.
Perguntas frequentes sobre testes da web
A seguir mencionadas devem estar as várias questões que vêm à mente de um testador ao pensar em um site que já foi desenvolvido e pode ser exposto ao público:
- O site está funcionando conforme o esperado?
- O usuário final achará o site fácil de navegar?
- O site está acessível em diferentes dispositivos dos usuários finais?
- O site é seguro o suficiente?
- O desempenho do site está à altura da marca?
- Os dados inseridos em um site são armazenados com precisão e persistem durante as sessões?
- O site está bem integrado com outras interfaces no fluxo de trabalho?
- O site terá o desempenho esperado mesmo depois de entrar no ar?
Para responder a essas perguntas, foram identificadas diferentes técnicas de teste que podem ser usadas para testar um aplicativo da web.
Vejamos o exemplo de um site de comércio eletrônico que foi lançado recentemente para teste da equipe de controle de qualidade.
Vamos passar por cada uma das perguntas acima especificadas em detalhes para entender o escopo do teste e ver como o teste do site pode ser executado.
O site está funcionando conforme o esperado?
confirmar se o site está funcionando bem, o controle de qualidade precisa realizar um teste funcional. Durante teste funcional , os diferentes recursos de um aplicativo precisam ser validados em relação aos requisitos mencionados no documento de especificação funcional.
Abaixo estão alguns cenários genéricos, um controle de qualidade deve cobrir durante a realização de testes funcionais de qualquer site, mesmo que eles não sejam mencionados nas especificações funcionais:
- Navegação do usuário para diferentes páginas do site e conclusão do fluxo de trabalho de ponta a ponta
- Se o usuário puder marcar / desmarcar as caixas de seleção
- Se o usuário puder selecionar valores nos campos suspensos
- Se o usuário puder selecionar / desmarcar os botões de rádio
- Botões de navegação diferentes, como os botões Enviar, Avançar, Fazer upload, etc., funcionam bem
- Os calendários estão carregando corretamente e permitindo que o usuário selecione uma data
- Os cálculos estão acontecendo conforme implementados
- A funcionalidade de pesquisa está funcionando, se houver
- Exibição de informações corretas
- Vários links internos e externos para outras páginas
- Ordem correta das guias dos campos nas páginas da web
- Os campos obrigatórios e opcionais devem ser verificados para as entradas positivas e negativas
- Os valores padrão para cada campo da web devem ser verificados
- A funcionalidade de e-mail é implementada para alguma ação no site
É importante que os sites sejam compatíveis com os mecanismos de pesquisa. Portanto, devemos revisar os sites quanto à correção da sintaxe HTML, formato e padrões de conformidade como WS-I, ISO e ECMA.
Considerando os cookies, que são usados para manter as sessões de login, o site deve ser testado ativando / desativando cookies ou usando o domínio incompatível. O teste também pode ser executado em todas as sessões, redefinindo os cookies para trazer os navegadores de volta ao estado normal.
O controle de qualidade também deve validar se os cookies do site são sempre armazenados localmente em um formato criptografado.
Considerando nosso site de e-commerce, diversos links como Moda Masculina, Moda Feminina, Moda Infantil, Acessórios para Casa, Eletrodomésticos, Livros, Filmes e Música etc. disponíveis em uma página da web devem ser clicados e verificados se o usuário navega para o página esperada.
Da mesma forma, diferentes funcionalidades como Login, Inscrição, Opção de Pesquisa, Filtros, Ordem de Classificação, Adicionar ao Carrinho, etc. devem ser verificados em diferentes páginas da web, como Página de Login, Página de Inscrição, Página de Detalhes do Produto, Carrinho de Compras, Revisão do Pedido, Pagamento, etc. O site deve ser verificado para gerenciamento de sessão / cookie, como expiração de sessão e armazenamento de sessão, etc.
O usuário final achará o site fácil de navegar?
O teste de usabilidade deve ser realizado para medir a facilidade de uso do site para um usuário final no contexto de acessibilidade, capacidade de pesquisa e utilidade, etc.
Abaixo mencionados estão alguns dos cenários de teste que devem ser verificados durante o teste de usabilidade para um site:
- O conteúdo do site deve ser informativo, estruturado e vinculado de forma lógica para que o usuário possa entender facilmente
- Os controles da página da web devem ser fáceis de navegar
- O site deve ter documentos de ajuda e instruções carregados
- O site deve ter o recurso de pesquisa para conveniência do usuário final
- O acesso de / para o menu principal para todas as páginas deve estar lá
- O conteúdo do site deve ser verificado quanto a erros de ortografia
- O site deve seguir as diretrizes definidas no contexto de cor de fundo, padrão, estilo, fontes, posicionamento de imagens, molduras, bordas, etc.
- O site deve estar acostumado com o recurso de tradução, considerando o fato de que pode ser acessado por usuários de diferentes nações com diferentes idiomas, moedas, etc.
Poucas ferramentas que podem ser usadas para realizar testes de usabilidade são Zoom do usuário e Refletor .
Um site de comércio eletrônico deve ser amigável ao cliente, fácil de navegar e chamar a atenção. Todas as páginas da web devem ser verificadas quanto à acessibilidade, fontes, estilo, imagens, erros de ortografia e informações relevantes do produto. Um site deve estar equipado com documentos de ajuda relevantes e recursos de suporte ao cliente.
Considerando o aumento nas interfaces baseadas em tela sensível ao toque, precisamos validar a acessibilidade das entradas principais e das entradas da tela sensível ao toque. Da mesma forma, imagens e conteúdo do site devem ser validados para usabilidade em diferentes tamanhos de tela (celulares, laptops e guias, etc.).
O site está acessível em diferentes dispositivos dos usuários finais?
Supondo que nosso site possa ser acessado por uma variedade de usuários com um conjunto diferente de dispositivos, precisamos garantir que o site funcione bem em todos eles, sem falhas.
Para garantir o mesmo, verificações de compatibilidade do site devem ser feitas, que vem com Teste de Compatibilidade . Durante o teste de compatibilidade de um site, é garantido que o site funcione bem em diferentes navegadores, sistemas operacionais e dispositivos, como laptops, telefones celulares, tablets, impressoras, etc.
Compatibilidade de navegadores (teste entre navegadores):
O site deve funcionar bem com navegadores diferentes, como Microsoft Internet Explorer, Microsoft Edge, Firefox, Google Chrome, Safari e Opera. Todas as versões ativas desses navegadores devem ser verificadas com os diferentes recursos do navegador ATIVADOS / DESATIVADOS.
Além disso, durante o desempenho teste cross-browser , O controle de qualidade também deve verificar o desempenho ideal do site em todos os navegadores.
Compatibilidade do sistema operacional (teste de plataforma cruzada):
Para identificar possíveis problemas de experiência do usuário, um site deve ser testado em várias plataformas, como Windows, Linux, Unix.MAC, Solaris, etc., para garantir a compatibilidade do sistema operacional.
Compatibilidade de dispositivos (teste entre dispositivos):
Um site pode ser navegado através de diferentes dispositivos como laptops, celulares, tablets, etc. com diferentes sistemas operacionais disponíveis, como iOS, Android, Windows, etc. Portanto, o teste deve ser realizado nos dispositivos também cobrindo os cenários abaixo.
- O tamanho da tela do site deve ser ajustável de acordo com o dispositivo
- Um dispositivo deve ter rotação de tela em destaque
- O site não deve apresentar problemas de carregamento em diferentes dispositivos com diferentes velocidades de rede
- Verifique o comportamento do site quando o dispositivo está dentro / fora do alcance da rede
- Verifique o comportamento do site em baixa CPU e memória para suportar diferentes fatores de forma
Para um site de comércio eletrônico, a verificação de compatibilidade é um dos tipos de teste mais importantes. A base de clientes será grande e acessará nosso site a partir de diferentes navegadores, sistemas operacionais e dispositivos.
Considerando que as plataformas móveis estão se tornando populares, devemos garantir que o site seja carregado em um formato pequeno e com um tempo de carregamento aceitável. Também é importante validar o uso de diferentes velocidades de rede para garantir que sejam utilizáveis por todos os clientes.
O site é seguro o suficiente?
O teste de segurança é executado para descobrir vulnerabilidades em um sistema e garantir que um site esteja protegido.
Abaixo está a lista de verificação que pode ser verificada durante a realização de testes de segurança:
- O site deve ser acessível apenas a usuários autenticados
- Os usuários do site devem ser capazes de realizar apenas as tarefas para as quais estão autorizados
- O site deve ser verificado para campos CAPTCHA para identificação do usuário
- As configurações de segurança do navegador devem ser verificadas durante a movimentação de páginas seguras para não seguras
- A proteção do servidor da web deve estar disponível para diretórios ou arquivos da web inacessíveis
- Certifique-se de que os arquivos restritos não sejam baixados sem o acesso apropriado
- As sessões que ficaram inativas devem ser eliminadas automaticamente após um certo período de tempo
- Todas as tentativas inválidas e não autorizadas por usuários finais ou erros / falhas intermitentes do sistema devem ser registrados para fins de análise
Ferramentas como Gestão de Vulnerabilidade , Veracode e Mapa SQL pode ser usado para realizar testes de segurança do seu site.
Como parte do teste de segurança, um site de comércio eletrônico deve ser validado para
- Controles de acesso ao site.
- Qualquer vazamento de informações pessoais do usuário.
- Métodos de pagamento seguros.
O desempenho do site está à altura da marca?
Para verificar o desempenho de um site, o teste de desempenho pode ser feito. Ele avaliará o comportamento de um aplicativo sob uma variedade de condições de carga de trabalho que podem ser um cenário realista. Se o sistema entrar no ar sem a realização de testes de desempenho, ele pode acabar com problemas como um sistema lento ou pouca usabilidade, o que provavelmente afetará a imagem da marca e também as vendas no mercado.
Um site pode ser testado em relação a carga e estresse.
Abaixo, está a lista de verificação para testes de desempenho na web:
- O comportamento do site deve ser observado em condições normais e de pico de carga
- O desempenho do site deve ser examinado medindo o tempo de resposta, velocidade, escalabilidade e utilização de recursos
- RCA (análise de causa raiz) adequada deve ser feita com uma solução se um sistema quebrar ou ficar instável a qualquer momento
- Problemas de latência de rede devem ser identificados, se houver
Um site de comércio eletrônico deve ser testado exaustivamente usando um conjunto de usuários simulados durante as condições normais e de pico de carga, que podem ser durante a 'Temporada de vendas'.
Durante a venda, os usuários acessando o site se multiplicariam. Além disso, o comportamento do site deve ser examinado enquanto vários usuários simultâneos acessam os mesmos itens ou realizam as mesmas ações (como transações ou fazer pedidos) no site.
Existem várias ferramentas disponíveis no mercado para testes de desempenho. Poucos deles são LoadRunner, WinRunner, Silk Performer, JMeter, etc.
Os dados inseridos em um site são armazenados com precisão e persistem durante as sessões?
O banco de dados é um dos componentes críticos de um aplicativo da web que contém todas as informações inseridas por meio de um site. Portanto, para garantir que os dados corretos do usuário sejam salvos nas tabelas do banco de dados sem nenhuma manipulação e para manter a integridade dos dados, as verificações devem ser realizadas.
- Verifique a consistência dos dados na interface do usuário, ou seja, a IU do site e o banco de dados
- Verifique se as tabelas do banco de dados estão atualizando corretamente sempre que ações de inserção / atualização / exclusão são realizadas por um aplicativo de site
- Verifique o tempo de resposta das dúvidas técnicas e ajuste-as, se necessário
- Verifique a conectividade do banco de dados e as permissões de acesso
Como um membro da equipe de QA que testa o site de e-commerce, você pode executar as atividades abaixo e validar as alterações a cada vez nas tabelas de banco de dados correspondentes. Isso garantirá que a IU e o banco de dados do site sejam consistentes.
1) Fazendo um pedido de um produto.
2) Cancelando produto.
3) Opte por trocar o produto.
4) Opte por devolver o produto.
O site está bem integrado com outras interfaces no fluxo de trabalho?
O teste de nível de interface é realizado para verificar a interação suave do site com diferentes interfaces, como o servidor da Web e o servidor de banco de dados.
Durante o teste de interface, o testador precisa ter certeza de que as solicitações do aplicativo estão sendo enviadas corretamente para o banco de dados e que as informações corretas são exibidas para o cliente como saída. Um servidor web não deve lançar nenhuma exceção de negação em nenhum momento e o banco de dados deve sempre permanecer sincronizado com o aplicativo.
O site terá o desempenho esperado mesmo depois de entrar no ar?
Depois que um produto passa para um ambiente de produção, a inspeção regular deve ser feita para manter uma verificação do controle de qualidade.
Os cenários abaixo podem ser considerados durante a verificação do produto em produção:
- Os testes de aplicativos da Web devem ser executados periodicamente e os logs de teste devem ser salvos como prova de conformidade com o Acordo de Nível de Serviço (SLA)
- Os sistemas de escalonamento automático e balanceadores de carga devem ser verificados se estão no lugar e funcionando
- Verifique as experiências do usuário final e tente descobrir defeitos ou ataques maliciosos que normalmente passam despercebidos durante os testes de controle de qualidade
- Monitore o tempo de resposta do produto durante os picos de carga
- Execute casos de teste de ponta em tempo real para identificar falhas de rede, falhas de conexão ou interrupção por uma chamada inesperada
Conclusão
Elaborei este tutorial detalhado com meus anos de experiência testando os diferentes sites.
Espero que este artigo ajude você a entender as diferentes facetas dos testes de aplicativos da web. Da próxima vez que você se sentar para escrever um plano de teste para seu site, lembre-se de validar vários aspectos além da funcionalidade do site.
Espero que este artigo tenha sido informativo para você!
Leitura recomendada
- Guia de teste de segurança de aplicativos da Web
- Teste Alfa e Teste Beta (um guia completo)
- Melhores ferramentas de teste de software 2021 (QA Test Automation Tools)
- Guia completo de teste de verificação de compilação (teste BVT)
- Teste Funcional Vs Teste Não Funcional
- Tipos de teste de software: diferentes tipos de teste com detalhes
- Guia para iniciantes em testes de penetração em aplicativos da Web
- Teste ETL Tutorial de teste de data warehouse (um guia completo)