Teste de aplicativos móveis: exemplos de casos de teste e cenários de teste
Uma pergunta frequente de nossos alunos é: Como testar aplicativos móveis? Neste tutorial, fornecemos exemplos de cenários de teste/casos de teste para testar um aplicativo móvel.
Você pode executar alguns ou todos os casos de teste com base nos requisitos de teste móvel. Os casos de teste são organizados com base nos tipos de teste móvel.
Teste Funcional de Aplicativo Móvel
A Teste Funcional de Aplicativo Móvel é um processo de teste de funcionalidades de aplicativos móveis, como interações do usuário, bem como de teste das transações que os usuários podem realizar. O principal objetivo dos testes funcionais de aplicativos móveis é garantir a qualidade, atendendo às expectativas especificadas, reduzindo riscos ou erros e satisfação do cliente.
Os vários fatores que são relevantes nos testes funcionais são
- Tipo de aplicativo com base nos usos da funcionalidade comercial (bancário, jogos, social ou empresarial)
- Target tipo de público (consumidor, empresa, educação)
- Canal de distribuição usado para divulgar o aplicativo (por exemplo, Apple App Store, Google play, distribuição direta)
Os cenários de teste mais fundamentais no teste funcional podem ser considerados como:
- Para validar se todos os campos obrigatórios obrigatórios estão funcionando conforme necessário.
- Validar que os campos obrigatórios sejam exibidos na tela de forma distinta dos campos não obrigatórios.
- Para validar se o aplicativo funciona conforme o requisito sempre que o aplicativo é iniciado/parado.
- Para validar se o aplicativo entra no modo minimizado sempre que recebe uma chamada. Para validar o mesmo precisamos utilizar um segundo telefone, para ligar para o aparelho.
- Para validar se o telefone é capaz de armazenar, processar e receber SMS sempre que o aplicativo estiver em execução. Para validar o mesmo precisamos utilizar um segundo telefone para enviar sms para o dispositivo que está sendo testado e onde o aplicativo em teste está sendo executado.
- Para validar se o dispositivo é capaz de executar os requisitos multitarefa necessários sempre que for necessário.
- Para validar se o aplicativo permite as opções necessárias de redes sociais, como compartilhamento, postagem e navegação, etc.
- Para validar se o aplicativo suporta qualquer transação de gateway de pagamento, como Visa, Mastercard, Paypal etc., conforme exigido pelo aplicativo.
- Para validar se os cenários de rolagem de página estão sendo habilitados no aplicativo conforme necessário.
- Para validar se a navegação entre os módulos relevantes do aplicativo está de acordo com o requisito.
- Para validar que os erros de truncamento estão absolutamente dentro de um limite acessível.
- Para validar se o usuário recebe uma mensagem de erro apropriada como “Erro de rede. Por favor, tente depois de algum tempo” sempre que houver algum erro de rede.
- Para validar se o aplicativo instalado permite que outros aplicativos funcionem satisfatoriamente e não consome memória de outros aplicativos.
- Para validar que o aplicativo seja retomado na última operação em caso de reinicialização forçada ou falha do sistema.
- Para validar se a instalação da aplicação pode ser feita sem problemas desde que o usuário possua os recursos necessários e não acarrete erros significativos.
- Para validar se o aplicativo executa o recurso de inicialização automática de acordo com os requisitos.
- Para validar se o aplicativo funciona de acordo com o requisito em todas as versões do Mobile que são 2g, 3g e 4g.
- Atuar Teste de regressão para descobrir novos bugs de software em áreas existentes de um sistema após alterações terem sido feitas neles. Execute também novamente os testes realizados anteriormente para determinar se o comportamento do programa não mudou devido às alterações.
- Para validar se o aplicativo fornece um guia do usuário disponível para quem não está familiarizado com o aplicativo
Casos de teste de teste de desempenho
O objetivo fundamental deste tipo de teste é garantir que a aplicação tenha um desempenho aceitável sob determinados requisitos de desempenho, como o acesso por um grande número de usuários ou a remoção de uma parte essencial da infraestrutura, como um servidor de banco de dados.
Os cenários de teste gerais para testes de desempenho em um aplicativo móvel são:
- Para determinar se o aplicativo funciona de acordo com os requisitos sob diferentes condições de carga.
- Determinar se a cobertura de rede atual é capaz de suportar a aplicação nos níveis de usuário de pico, médio e mínimo.
- Para determinar se a configuração cliente-servidor existente fornece o nível de desempenho ideal necessário.
- Identificar os vários gargalos de aplicativos e infraestrutura que impedem o desempenho do aplicativo nos níveis de aceitabilidade exigidos.
- Para validar se o tempo de resposta da aplicação está de acordo com os requisitos.
- Avaliar o produto e/ou hardware para determinar se ele pode lidar com volumes de carga projetados.
- Avaliar se a duração da bateria pode suportar o desempenho da aplicação sob os volumes de carga projetados.
- Para validar o desempenho do aplicativo quando a rede é alterada para WIFI de 2G/3G ou vice-versa.
- Para validar cada um dos ciclos de CPU necessários é a otimização
- Para validar se o consumo da bateria, vazamentos de memória, recursos como GPS, o desempenho da câmera está dentro das diretrizes exigidas.
- Validar a longevidade da aplicação sempre que a carga do usuário for rigorosa.
- Para validar o desempenho da rede enquanto se movimenta com o dispositivo.
- Para validar o desempenho da aplicação quando apenas fases intermitentes de conectividade são necessárias.
Casos de teste de testes de segurança
O objetivo fundamental dos testes de segurança é garantir que os requisitos de segurança de rede e de dados do aplicativo sejam atendidos de acordo com as diretrizes.
A seguir estão as áreas mais cruciais para verificar a segurança de aplicativos móveis.
- Para validar que o aplicativo é capaz de resistir a qualquer ataque de força bruta, é um processo automatizado de tentativa e erro usado para adivinhar o nome de usuário, a senha ou o número do cartão de crédito de uma pessoa.
- Para validar se um aplicativo não está permitindo que um invasor acesse conteúdo ou funcionalidade confidencial sem a autenticação adequada.
- Para validar que o aplicativo possui um sistema forte de proteção por senha e não permite que um invasor obtenha, altere ou recupere a senha de outro usuário.
- Para validar que o aplicativo não sofre expiração de sessão insuficiente.
- Identificar as dependências dinâmicas e tomar medidas para evitar que qualquer invasor acesse essas vulnerabilidades.
- Para prevenir de SQL ataques relacionados à injeção.
- Para identificar e recuperar-se de quaisquer cenários de código não gerenciado.
- Para garantir se os certificados são validados, o aplicativo implementa a fixação de certificados ou não.
- Para proteger o aplicativo e a rede contra ataques de negação de serviço.
- Analisar os requisitos de armazenamento e validação de dados.
- Para habilitar o gerenciamento de sessões para evitar que usuários não autorizados acessem informações não solicitadas.
- Para verificar se algum código de criptografia está quebrado e garantir que ele seja reparado.
- Para validar se a implementação da lógica de negócios está segura e não vulnerável a qualquer ataque externo.
- Para analisar as interações do sistema de arquivos, determine qualquer vulnerabilidade e corrija esses problemas.
- Para validar os manipuladores de protocolo, por exemplo, tentando reconfigurar a página inicial padrão do aplicativo usando um iframe malicioso.
- Para proteger contra injeções maliciosas do lado do cliente.
- Para proteger contra injeções maliciosas em tempo de execução.
- Para investigar o cache de arquivos e evitar quaisquer possibilidades maliciosas do mesmo.
- Para evitar o armazenamento inseguro de dados no cache do teclado dos aplicativos.
- Para investigar cookies e prevenir quaisquer ações maliciosas dos cookies.
- Fornecer auditorias regulares para análise de proteção de dados.
- Investigue arquivos criados personalizados e evite qualquer ação maliciosa dos arquivos criados personalizados.
- Para evitar estouros de buffer e casos de corrupção de memória.
- Para analisar diferentes fluxos de dados e prevenir quaisquer vulnerabilidades destes.
Casos de teste de teste de usabilidade
O processo de teste de usabilidade do aplicativo Mobile é realizado para ter um aplicativo rápido e fácil com menos funcionalidades do que um aplicativo lento e difícil com muitos recursos. O principal objetivo é garantir que acabemos tendo uma interface fácil de usar, intuitiva e semelhante às interfaces aceitas pela indústria e amplamente utilizadas.
- Para garantir que os botões tenham o tamanho necessário e sejam adequados para dedos grandes.
- Garantir que os botões sejam colocados na mesma seção da tela para evitar confusão aos usuários finais.
- Para garantir que os ícones sejam naturais e consistentes com o aplicativo.
- Para garantir que os botões, que têm a mesma função, também tenham a mesma cor.
- Para garantir que a validação dos recursos de zoom in e zoom out deve estar habilitada.
- Para garantir que a entrada do teclado possa ser minimizada de maneira adequada.
- Para garantir que o aplicativo forneça um método para voltar ou desfazer uma ação, ao tocar no item errado, dentro de um período aceitável.
- Para garantir que os menus contextuais não fiquem sobrecarregados porque devem ser utilizados rapidamente.
- Garantir que o texto seja simples e claro para ser visível aos usuários.
- Para garantir que as frases curtas e parágrafos sejam legíveis para os usuários finais.
- Para garantir que o tamanho da fonte seja grande o suficiente para ser legível e nem muito grande nem muito pequeno.
- Para validar o aplicativo avisa o usuário sempre que ele inicia o download de uma grande quantidade de dados que podem não ser propícios para o desempenho do aplicativo.
- Validar que o fechamento da aplicação é realizado em diferentes estados e verificar se ela reabre no mesmo estado.
- Garantir que todas as strings sejam convertidas nos idiomas apropriados sempre que um recurso de tradução de idiomas estiver disponível.
- Para garantir que os itens da aplicação estejam sempre sincronizados de acordo com as ações do usuário.
- Garantir que o usuário final receba um manual do usuário que ajude o usuário final a compreender e operar o aplicativo, que pode não estar familiarizado com os procedimentos do aplicativo
O teste de usabilidade é normalmente realizado por usuários manuais, pois somente seres humanos podem compreender a sensibilidade e capacidade de conforto dos demais usuários.
Casos de teste de teste de compatibilidade
O teste de compatibilidade em dispositivos móveis é realizado para garantir que, como os dispositivos móveis têm tamanhos, resoluções, telas, versões e hardware diferentes, o aplicativo deve ser testado em todos os dispositivos para garantir que funcione conforme desejado.
A seguir estão as áreas mais importantes para testes de compatibilidade.
- Para validar se a interface do usuário do aplicativo está de acordo com o tamanho da tela do dispositivo, nenhum texto/controle fica parcialmente invisível ou inacessível.
- Para garantir que o texto seja legível para todos os usuários do aplicativo.
- Para garantir que a funcionalidade de chamada/alarme esteja habilitada sempre que o aplicativo estiver em execução. O aplicativo é minimizado ou suspenso no caso de uma chamada e, sempre que a chamada é interrompida, o aplicativo é retomado.
Casos de teste de teste de recuperabilidade
- Recuperação de falhas e interrupções de transações
- Validação da situação eficaz de recuperação de aplicativos após cenários inesperados de interrupção/travamento.
- Verificação de como o aplicativo lida com uma transação durante uma falha de energia (ou seja, a bateria acaba ou um desligamento manual repentino do dispositivo)
- Na validação do processo onde a conexão está suspensa, o sistema precisa se restabelecer para recuperar os dados diretamente afetados pela conexão suspensa. Utilizando o direito ferramentas de teste móveis pode ajudar a garantir um processo de recuperação contínuo.
Lista de verificação importante
- Teste de instalação (se o aplicativo pode ser instalado em um período de tempo razoável e com os critérios exigidos)
- Teste de desinstalação (se o aplicativo pode ser desinstalado em um período de tempo razoável e com os critérios exigidos)
- Casos de teste de rede (validação se a rede está funcionando sob a carga exigida ou não, se a rede é capaz de suportar todos os aplicativos necessários durante os procedimentos de teste)
- Verifique chaves não mapeadas
- Verifique a tela inicial do aplicativo
- Entrada contínua do teclado durante interrupções e outros momentos, como problemas de rede
- Métodos que tratam de sair do aplicativo
- Efeito carregador enquanto um aplicativo está sendo executado em segundo plano
- Bateria fraca e demanda de alto desempenho
- Remoção da bateria enquanto uma aplicação está sendo executada
- Consumo de bateria por aplicação
- Verifique os efeitos colaterais do aplicativo