O que é teste de escalabilidade? Aprenda com o exemplo

Teste de Escalabilidade

Teste de Escalabilidade é um método de teste não funcional que mede o desempenho de um sistema ou rede quando o número de solicitações do usuário aumenta ou diminui. O objetivo do teste de escalabilidade é garantir que o sistema possa lidar com o aumento projetado no tráfego de usuários, volume de dados, frequência de contagens de transações, etc. Ele testa a capacidade do sistema de atender às necessidades crescentes.

Também é conhecido como teste de desempenho, pois se concentra no comportamento do aplicativo quando implantado em um sistema maior ou testado sob carga excessiva. Em Engenharia de Software, o Teste de Escalabilidade é medir em que ponto o aplicativo para de escalar e identificar o motivo por trás disso.

Por que fazer testes de escalabilidade

  • O teste de escalabilidade permite determinar como seu aplicativo é dimensionado com o aumento da carga de trabalho.
  • Determine o limite de usuários para o aplicativo da web.
  • Determine a degradação do lado do cliente e a experiência do usuário final sob carga.
  • Determine a robustez e degradação do lado do servidor.

O que testar no teste de escalabilidade

Aqui estão alguns atributos de teste de escalabilidade:

  • Tempo de resposta
  • Transição de tela
  • Taxa de transferência
  • Tempo (tempo da sessão, tempo de reinicialização, tempo de impressão, tempo de transação, tempo de execução da tarefa)
  • Medição de desempenho com vários usuários
  • Solicitação por segundos, transação por segundos, acessos por segundo
  • Medição de desempenho com vários usuários
  • Uso da rede
  • CPU / uso de memória
  • Servidor Web (solicitação e resposta por segundos)
  • Medição de desempenho sob carga

Estratégia de teste para teste de escalabilidade

Estratégia de teste para teste de escalabilidade difere em termos do tipo de aplicativo que está sendo testado. Se um aplicativo acessar um banco de dados, os parâmetros de teste testarão o tamanho do banco de dados em relação ao número de usuários e assim por diante.

Pré-requisitos para teste de escalabilidade

  • Capacidade de distribuição de carga - Verifique se a ferramenta de teste de carga permite que a carga seja gerada a partir de várias máquinas e controlada a partir de um ponto central.
  • Sistema operacional- Verifique em quais sistemas operacionais os agentes de geração de carga e o mestre de teste de carga executam
  • Processador - Verifique que tipo de CPU é necessária para o agente de usuário virtual e mestre de teste de carga
  • Memória - Verifique quanta memória seria suficiente para o agente de usuário virtual e mestre de teste de carga

Como fazer testes de escalabilidade

  1. Defina um processo que pode ser repetido para a execução de testes de escalabilidade ao longo do ciclo de vida do aplicativo
  2. Determine os critérios de escalabilidade
  3. Lista as ferramentas de software necessárias para executar o teste de carga
  4. Defina o ambiente de teste e configure o hardware necessário para executar os testes de escalabilidade
  5. Planeje os cenários de teste, bem como os testes de escalabilidade
  6. Crie e verifique o script visual
  7. Crie e verifique os cenários de teste de carga
  8. Execute os testes
  9. Avalie os resultados
  10. Gerar relatórios necessários

Plano de Teste de Escalabilidade

Antes de realmente criar os testes, desenvolva um plano de teste detalhado. É uma etapa importante para garantir que o teste esteja em conformidade com os requisitos do aplicativo.

A seguir estão os atributos para a criação de um Plano de teste para teste de escalabilidade.

  • Etapas para scripts : O script de teste deve ter uma etapa detalhada que determina as ações exatas que um usuário executaria.
  • Dados de tempo de execução : O plano de teste deve determinar todos os dados de tempo de execução necessários para interagir com o aplicativo
  • Testes Orientados a Dados : Se os scripts precisam de dados variáveis ​​em tempo de execução, você precisa ter uma compreensão de todos os campos que requerem esses dados.

Teste de escalabilidade vs. teste de carga

Teste de Escalabilidade Teste de carga
  • Ele se concentra no desempenho de seus sites, software, hardware e aplicativo quando são feitas alterações no tamanho ou volume do sistema para atender a uma necessidade crescente.
  • Teste de carga concentra-se no teste de um aplicativo sob cargas pesadas, para determinar em que ponto o tempo de resposta do sistema falha.

Resumo:

  • É um tipo de teste de software que testa a capacidade de um sistema, uma rede ou um processo quando o tamanho / volume do sistema é alterado para atender a uma necessidade crescente.
  • A ideia por trás do teste de escalabilidade é medir em que ponto o aplicativo para de escalar e identificar a razão por trás disso
  • Estratégia de teste para teste de escalabilidade difere em termos do tipo de aplicativo que está sendo testado.