Teste de sistema baseado na Web No desenvolvimento de sistemas baseados na Web, se houver falta de processos rígidos, podemos encontrar alguns problemas sérios no processo de desenvolvimento, publicação, implementação e manutenção da Web, e a possibilidade de falha é alta . Além disso, à medida que os sistemas baseados na Web se tornam cada vez mais complexos, o fracasso de um projecto pode causar muitos problemas. Quando isto acontece, a nossa confiança na Web e na Internet pode ser irrevogavelmente abalada, causando uma crise na Web. Além disso, a crise da Web pode ser mais grave e generalizada do que a crise do software enfrentada pelos criadores de software.
No processo de engenharia Web, o teste, confirmação e aceitação de sistemas baseados na Web é uma tarefa importante e desafiadora. O teste de sistema baseado na Web é diferente do teste de software tradicional. Ele não só precisa verificar e verificar se funciona de acordo com os requisitos de design, mas também testa se a exibição do sistema nos navegadores de diferentes usuários é apropriada. É importante também realizar testes de segurança e usabilidade do ponto de vista do usuário final. No entanto, a imprevisibilidade da Internet e da mídia Web dificulta o teste de sistemas baseados na Web. Portanto, devemos pesquisar novos métodos e técnicas para testar e avaliar sistemas complexos baseados na web. O ciclo de lançamento de software geral é calculado em meses ou anos, enquanto o ciclo de lançamento de aplicativos web é calculado em dias ou até horas.
Os testadores da Web devem lidar com ciclos de lançamento mais curtos, e os testadores e gerentes de teste enfrentam a transição do teste de estruturas e ambientes de estrutura C/S tradicionais para o teste de sistemas de aplicativos da Web em rápida mudança.
1. Teste funcional
1. Teste de link Links são um recurso importante dos sistemas de aplicativos da Web. Eles são o principal meio de alternar entre páginas e orientar os usuários para páginas com endereços desconhecidos. O teste de link pode ser dividido em três aspectos. Primeiro, teste se todos os links realmente direcionam para a página vinculada conforme indicado; em segundo lugar, teste se a página vinculada existe; por fim, certifique-se de que não haja páginas órfãs no sistema do aplicativo da web. links que apontam para a página, que só podem ser acessados se você souber o endereço URL correto. O teste de link pode ser automatizado e existem muitas ferramentas disponíveis para isso. O teste de link deve ser concluído durante a fase de teste de integração, ou seja, o teste de link é realizado após o desenvolvimento de todas as páginas de todo o sistema de aplicação Web.
2. Teste de formulário Quando os usuários enviam informações ao administrador do sistema de aplicação web, eles precisam usar operações de formulário, como registro de usuário, login, envio de informações, etc. Neste caso, devemos testar a integridade da operação de envio para verificar a veracidade das informações submetidas ao servidor. Por exemplo: se a data de nascimento e profissão preenchida pelo usuário são adequadas, se a província e a cidade preenchidas correspondem, etc. Se forem usados valores padrão, verifique a exatidão dos valores padrão. Se o formulário aceitar apenas determinados valores especificados, teste isso também. Por exemplo: apenas alguns caracteres podem ser aceitos. Você pode ignorar esses caracteres durante o teste para ver se o sistema reportará um erro.
3. Teste de cookies Os cookies geralmente são usados para armazenar informações e operações do usuário em um sistema de aplicativo. Quando um usuário usa Cookies para acessar um sistema de aplicativo, o servidor Web enviará informações sobre o usuário e armazenará as informações na forma de Cookies. No computador cliente, isso pode ser usado para criar páginas dinâmicas e personalizadas ou armazenar informações como logins. Se o sistema da aplicação web utiliza Cookies, você deve verificar se os Cookies funcionam corretamente. O conteúdo do teste pode incluir se os cookies funcionam, se são salvos de acordo com o horário programado, qual o impacto da atualização nos cookies, etc.
4. Teste de linguagem de design Diferenças nas versões de linguagem de design da web podem causar sérios problemas no lado do cliente ou do servidor, como qual versão de HTML usar. Esta questão é particularmente importante quando se desenvolve em um ambiente distribuído, onde os desenvolvedores não estão todos juntos. Além dos problemas de versão HTML, diferentes linguagens de script como Java, JavaScript, ActiveX, VBScript ou Perl também precisam ser verificadas.
5. Teste de banco de dados Na tecnologia de aplicações Web, o banco de dados desempenha um papel importante. O banco de dados fornece espaço para gerenciamento, operação, consulta e realização de solicitações de usuários para armazenamento de dados do sistema de aplicações Web. Em aplicações web, o tipo de banco de dados mais comumente usado é um banco de dados relacional, que pode usar SQL para processar informações. Em um sistema de aplicação Web que utiliza um banco de dados, geralmente podem ocorrer dois tipos de erros, nomeadamente erros de consistência de dados e erros de saída. Os erros de consistência de dados são causados principalmente por informações incorretas do formulário enviadas pelos usuários, enquanto os erros de saída são causados principalmente pela velocidade da rede ou por problemas de design do programa. Para essas duas situações, os testes podem ser realizados separadamente.
2. Teste de desempenho
1. Teste de velocidade de conexão
A velocidade com que os usuários se conectam ao sistema de aplicação Web muda de acordo com a forma como acessam a Internet. Eles podem discar por telefone ou usar o acesso à Internet de banda larga. Os usuários podem esperar mais tempo ao baixar um programa, mas não ao simplesmente visitar uma página. Se o tempo de resposta do sistema web for muito longo (por exemplo, mais de 5 segundos), os usuários sairão porque estão impacientes para esperar. Além disso, algumas páginas têm restrições de tempo limite. Se a velocidade de resposta for muito lenta, os usuários podem precisar fazer login novamente antes de terem tempo de navegar pelo conteúdo. Além disso, se a velocidade da conexão for muito lenta, também poderá causar perda de dados e impedir que os usuários obtenham a página real.
2. Teste de carga
O teste de carga serve para medir o desempenho do sistema Web em um determinado nível de carga para garantir que o sistema Web possa funcionar normalmente dentro dos requisitos. O nível de carga pode ser o número de usuários que acessam o sistema Web ao mesmo tempo em um determinado horário ou a quantidade de processamento de dados online. Por exemplo: Quantos usuários o sistema de aplicação Web pode permitir que estejam online ao mesmo tempo. Se esse número for excedido, o que acontecerá? O sistema de aplicação Web pode lidar com um grande número de solicitações de usuários para a mesma página
? teste
O teste de carga deve ser organizado no sistema Web. Após o lançamento, teste-o no ambiente de rede real. Como os funcionários internos de uma empresa, especialmente os membros da equipe do projeto, são sempre limitados, e o número de solicitações que um sistema Web pode atender ao mesmo tempo excederá em muito esse limite, então os resultados só serão corretos se forem colocados na Internet e testes de carga aceitos. A realização de testes de estresse refere-se à destruição real de um sistema de aplicação web e ao teste da resposta do sistema. O teste de estresse serve para testar as limitações do sistema e a capacidade de recuperação de falhas, ou seja, para testar se o sistema de aplicação web irá travar e em que circunstâncias ele irá travar. Os hackers geralmente fornecem cargas de dados falsas até que o sistema do aplicativo da web trave e, em seguida, obtêm acesso quando o sistema é reiniciado. As áreas de testes de estresse incluem formulários, login e outras páginas de transferência de informações.
3. Teste de usabilidade
1. Teste de navegação A navegação descreve a forma como os usuários operam dentro de uma página, entre diferentes controles da interface do usuário, como botões, caixas de diálogo, listas e janelas, etc.; Você pode determinar se um aplicativo Web é fácil de navegar considerando as seguintes questões: A navegação é intuitiva As principais partes do sistema Web são acessíveis a partir da página inicial? O sistema Web requer um mapa do site, um mecanismo de pesquisa ou outro tipo de navegação? ajudas? Numa página Colocar muita informação muitas vezes tem o efeito oposto ao pretendido. Os usuários de sistemas de aplicativos da web tendem a ser orientados por um propósito e examinar rapidamente um sistema de aplicativos da web para ver se há informações que atendam às suas necessidades. Caso contrário, eles sairão rapidamente. Poucos usuários estão dispostos a dedicar algum tempo para se familiarizarem com a estrutura de um sistema de aplicação Web. Portanto, a ajuda de navegação do sistema de aplicação Web deve ser tão precisa quanto possível. Outro aspecto importante da navegação é se a estrutura da página, a navegação, os menus e os estilos de conexão do sistema de aplicação Web são consistentes. Garanta que os usuários saibam intuitivamente se há conteúdo no sistema de aplicação web e onde está o conteúdo. Uma vez decidido o nível do sistema de aplicação Web, é necessário começar a testar a função de navegação do usuário. Deixe os usuários finais participarem deste teste e o efeito será mais óbvio.
2. Teste gráfico
Em sistemas de aplicação Web, imagens e animações apropriadas podem não apenas desempenhar o papel de publicidade, mas também embelezar a página. Os gráficos de um sistema de aplicação Web podem incluir imagens, animações, bordas, cores, fontes, planos de fundo, botões, etc.
O conteúdo do teste gráfico inclui:
(1) Garantir que os gráficos tenham um propósito claro e não empilhem imagens ou animações aleatoriamente para evitar perda de tempo de transmissão. O tamanho da imagem do sistema de aplicação web deve ser o menor possível e deve ser capaz de explicar algo claramente, geralmente com um link para uma página específica.
(2) Verifique se o estilo da fonte de todas as páginas é consistente.
(3) A cor de fundo deve corresponder à cor da fonte e à cor do primeiro plano.
(4) O tamanho e a qualidade da imagem também são um fator muito importante, e geralmente é usada compactação JPG ou GIF.
3. Teste de conteúdo
O teste de conteúdo é usado para testar a exatidão, precisão e relevância das informações fornecidas pelo sistema de aplicação Web. A precisão da informação refere-se ao fato de a informação ser confiável ou mal informada. Por exemplo, em uma lista de preços de produtos, preços incorretos podem causar problemas financeiros ou até mesmo gerar disputas legais. A exatidão das informações refere-se à existência de erros gramaticais ou ortográficos; Esse tipo de teste geralmente é realizado por meio de algum software de processamento de texto, como a função "Pinyin e verificação gramatical" do Microsoft Word. A relevância da informação refere-se à possibilidade de encontrar uma lista de informações ou entrada relacionada às informações de navegação atuais; na página atual, ou seja, a chamada "lista de artigos relacionados" em sites em geral.
4. Teste geral da interface
A interface geral refere-se ao design da estrutura da página de todo o sistema de aplicativos da Web, o que dá aos usuários uma sensação de integridade. Por exemplo: Os usuários se sentem confortáveis ao navegar no sistema de aplicativos da Web. Eles sabem intuitivamente onde estão as informações que procuram? O estilo de design de todo o sistema de aplicativos da Web é realmente um teste? para o usuário final. Geralmente, os sistemas de aplicação Web assumem a forma de um questionário na página inicial para obter feedback dos usuários finais. Para todos os testes de usabilidade é necessária a participação de pessoas externas (pessoas que têm pouco ou nenhum contato com o desenvolvimento de sistemas de aplicações Web), preferencialmente usuários finais.
4. Teste de compatibilidade do cliente
1. Teste de plataforma
Existem muitos tipos diferentes de sistemas operacionais no mercado, os mais comuns são Windows, Unix, Macintosh, Linux, etc. Qual sistema operacional o usuário final do sistema de aplicativo da web usa depende da configuração do sistema do usuário. Dessa forma, podem ocorrer problemas de compatibilidade. O mesmo aplicativo pode ser executado normalmente em alguns sistemas operacionais, mas pode falhar em outros sistemas operacionais. Portanto, antes de o sistema Web ser lançado, o sistema Web precisa ser testado quanto à compatibilidade com vários sistemas operacionais.
2. Teste do navegador
O navegador é o componente principal do cliente Web. Navegadores de diferentes fabricantes têm suporte diferente para Java, JavaScript, ActiveX, plug-ins ou especificações HTML diferentes. Por exemplo, ActiveX é um produto da Microsoft e foi projetado para o Internet Explorer, JavaScript é um produto da Netscape, Java é um produto da Sun e assim por diante. Além disso, os estilos de quadro e hierarquia aparecem de forma diferente em navegadores diferentes, ou nem aparecem. Navegadores diferentes têm configurações de segurança e Java diferentes. Uma maneira de testar a compatibilidade do navegador é criar uma matriz de compatibilidade. Nesta matriz é testada a adaptabilidade de navegadores de diferentes fabricantes e diferentes versões a determinados componentes e configurações.
5. Teste de segurança
As áreas de teste de segurança dos sistemas de aplicativos da Web incluem principalmente:
(1) Os sistemas de aplicativos da Web de hoje adotam basicamente o método de registro primeiro e depois login. Portanto, é necessário testar nomes de usuários e senhas válidos e inválidos, prestar atenção se diferenciam maiúsculas de minúsculas, limitar o número de tentativas, se é possível navegar diretamente em uma página sem fazer login, etc.
(2) Se o sistema de aplicação Web possui restrições de tempo limite, ou seja, se o usuário não clicar em nenhuma página dentro de um determinado período de tempo (por exemplo, 15 minutos) após o login, ele precisará fazer login novamente para usar normalmente.
(3) Para garantir a segurança do sistema de aplicação Web, os arquivos de log são cruciais. É necessário testar se as informações relevantes estão gravadas no arquivo de log e se podem ser rastreadas.
(4) Ao usar um soquete seguro, teste se a criptografia está correta e verifique a integridade das informações.
(5) Os scripts do lado do servidor constituem frequentemente lacunas de segurança, e essas lacunas são frequentemente exploradas por hackers. Portanto, também precisamos testar o problema de que os scripts não podem ser colocados e editados no lado do servidor sem autorização.
6. Resumo
Este artigo discute métodos de teste de sistema baseados na Web nos aspectos de função, desempenho, usabilidade, compatibilidade do cliente, segurança, etc. O teste de sistema baseado na Web tem semelhanças e diferenças com o teste de software tradicional, o que impõe novos desafios aos testes de software. O teste de sistema baseado na Web não só precisa verificar e verificar se ele funciona de acordo com os requisitos de design, mas também avaliar se a exibição do sistema nos navegadores de diferentes usuários é apropriada. É importante também realizar testes de segurança e usabilidade do ponto de vista do usuário final.