Seu site está preparado para vários acessos simultâneos? Descubra com Teste de Carga

Rogério Marques

16 outubro 2018 - 16:54 | Atualizado em 13 junho 2023 - 16:28

Pessoa utilizando um computador

Teste de Carga é utilizado para verificar se o sistema desenvolvido suporta um alto volume de dados solicitados pelos seus usuários, verificando assim o tempo de processamento que o sistema precisa para processar as informações e o tempo de resposta para que as informações solicitadas cheguem aos seus solicitantes.

O sistema que passa por um teste de carga e tem sua resposta positiva pode minimizar o prejuízo do cliente em níveis altíssimos. Imagine que você está realizando uma compra em um site e o mesmo demora dez minutos para incluir o seu produto no carrinho de compras. O usuário não tem o mínimo interesse em esperar todo esse tempo, sendo que ele pode realizar a mesma compra em outro site que demore menos tempo para realizar a inclusão do produto e assim finalizar a compra.

Nesse exemplo o cliente vai perder muito dinheiro, pois envolve diretamente nas suas vendas que é a principal fonte de renda de um e-commerce. O teste de carga é tão importante que pode impedir a falência de um e-commerce.

Um dos motivos que pode gerar essa lentidão no tempo de resposta, pode ser o modo no qual o sistema foi implementado. O desenvolvedor pode programar de forma incorreta, como por exemplo utilizando códigos repetitivos, loops incorretos, uso de memória desnecessária, uso de funções recursivas de modo incorreto, acesso as informações no banco de dados e até a forma de exibir os dados impacta no tempo de resposta.

Agora imagine todos os exemplos citados anteriormente multiplicados por vários usuários utilizando a aplicação ao mesmo tempo. Isso gera um desconforto enorme e com certeza o usuário vai trocar de aplicação e ainda divulgar como foi a sua experiência usando a aplicação que não passou pelo teste de carga. Porém, com um teste de carga bem elaborado, todos esses defeitos podem ser identificados e corrigidos na fase de desenvolvimento impedindo um prejuízo maior futuramente.

Outro ponto que pode ser avaliado com o teste de carga é se o sistema desenvolvido está estável, um bom cenário para descobrir isso é simular vários acessos simultaneamente, monitorando como o sistema vai se manter quando vários usuários começarem a mandar requisições ao mesmo tempo, assim atingindo um pico alto de tráfego de dados, dessa forma a empresa que desenvolveu o sistema pode fornecer para o cliente um produto que não dê prejuízos financeiros por não conseguir se manter no ar quando muitos usuários estão utilizando o sistema.

Existem algumas ferramentas que os analistas de teste podem utilizar para executar o teste de carga no sistema. Elas são Jmeter, Tsung, WebLoad, Locust entre outras. Com essas ferramentas, é possível descobrir os pontos onde o sistema deve ser melhorado, proporcionando aos analistas vários tipos de dados e os seus resultados.

Alguns desses resultados são:

  • Gráficos que mostram o pico em que o sistema se manteve estável e quando parou de funcionar (mas essas informações utilizamos em outro teste, que é o teste de stress e não abordaremos o mesmo nesse artigo);
  • Relatórios informando quantas requisições foram realizadas simultaneamente;
  • Tabelas informando se as requisições foram respondidas com sucesso ou se houve alguma falha;
  • Árvore de resultados que captura informações mais detalhadas de cada requisição realizada e qual o motivo pode ter levado a falha na resposta.

O teste de carga é extremamente importante e sempre deve ser executado antes de liberar uma versão para os usuários. O recomendado é que o sistema passe por todos os testes de performance que são: Teste de Carga, Teste de Estresse, Teste de Resistência, Teste de Subida Rápida e Teste de Configuração. Esses testes juntos podem tornar o sistema mais estável, garantindo um nível maior de satisfação tanto para o cliente quanto para o usuário.

Recomendados para você

Pessoa digitando no computador com alguns gráficos em primeiro plano
Que oportunidades o enriquecimento de dados pode trazer para a sua empresa? ...
Pessoa utilizando computador com símbolo de engrenagens ao lado da imagem
Como a arquitetura de Microservices colabora com os métodos ágeis? ...
5 tendências tecnologias para 2024 e como elas vão impactar o mercado financeiro ...