Como usar JMeter para testes de desempenho e carga

⚡ Resumo Inteligente

JMeter Os testes de desempenho medem o comportamento de uma aplicação web sob forte carga simultânea, combinando testes de carga e testes de estresse para revelar a capacidade máxima, os tempos de resposta e os gargalos antes que os usuários reais sobrecarreguem o servidor.

  • 🧩 Plano de teste: O grupo de threads, os samplers e os listeners definem o teste.
  • 👥 Grupo de tópicos: Define os usuários, o período de ativação e a quantidade de iterações.
  • 📊 Ouvintes: Os resultados em gráficos e tabelas visualizam os dados de desempenho.
  • 🔥 Carga versus Tensão: Os modelos de carga preveem o tráfego; o estresse encontra o ponto de ruptura.
  • 🤖 Assistência de IA: Os modelos de IA carregam perfis e sinalizam regressões de desempenho.

JMeter Testes de desempenho e carga

JMeter Teste de carga

JMeter Teste de carga é um processo de teste feito usando uma ferramenta de teste de carga chamada Apache JMeter que é um aplicativo de desktop de código aberto baseado em Java. JMeter para teste de carga é uma ferramenta crucial que determina se o aplicativo da web em teste pode satisfazer requisitos de alta carga ou não. Também ajuda a analisar o servidor geral sob carga pesada.

JMeter Teste de Desempenho

JMeter Teste de Desempenho is Testes método realizado usando Apache JMeter para testar o desempenho de uma aplicação web. JMeter para testes de desempenho ajuda a testar recursos estáticos e dinâmicos, ajuda a descobrir usuários simultâneos no site e fornece diversas análises gráficas para testes de desempenho. JMeter o teste de desempenho inclui teste de carga e teste de estresse do aplicativo da web.

JMeter Teste de Desempenho

Apache JMeter ferramenta de teste oferece o seguinte beneficiar in Teste de Desempenho

  • JMeter pode ser usado para testar o desempenho de ambos estático recursos como JavaScript e HTML, bem como dinâmico recursos, como JSP, Servlets e AJAX.
  • JMeter pode descobrir número máximo de usuários simultâneos que seu site pode suportar
  • JMeter fornece uma variedade de análises gráficas de relatórios de desempenho.

JMeter O teste de desempenho inclui:

JMeter Teste de Desempenho

  • Ver Teste: Modelando o uso esperado simulando o acesso de vários usuários ao Serviços Web simultaneamente.
  • Estresse Teste: Todo servidor web possui uma capacidade máxima de carga. Quando a carga ultrapassa o limite, o servidor web começa a responder lentamente e a produzir erros. O propósito do Teste de estresse é encontrar a carga máxima que o servidor web pode suportar.

A figura abaixo mostra como JMeter O teste de carga simula a carga pesada:

JMeter Teste de Desempenho

Crie um plano de teste de desempenho em JMeter

Neste tutorial, faremos uma análise de desempenho de Google.com para 1000 usuários usando vários ferramentas de teste de desempenho para garantir que o site possa lidar com a carga e fornecer uma experiência de usuário perfeita.

Antes de testar o desempenho do aplicativo web alvo, devemos determinar-

  • Carga Normal: número médio de usuários que visitam seu site
  • Heavy Load: o número máximo de usuários que visitam seu site
  • Qual é o seu alvo neste teste?

Aqui está o roadmap deste exemplo prático

Crie um plano de teste de desempenho em JMeter

Etapa 1) Adicionar grupo de tópicos

  1. Começar JMeter
  2. Selecionar Plano de teste na árvore
  3. Adicione Grupo de Tópicos

Clique com o botão direito em “Plano de Teste” e adicione um novo grupo de threads: Adicione -> Tópicos (Usuários) -> Grupo de Tópicos

Adicionar grupo de threads

No painel de controle do Thread Group, insira Thread Properties da seguinte forma:

Adicionar grupo de threads

  • Número de processos: 100 (Número de usuários conectados ao site de destino: 100)
  • Contagem de Loop: 10 (Número de tempo para executar o teste)
  • RampPeríodo -Up: 100

A contagem de threads e as contagens de loops são diferente.

Adicionar grupo de threads

Ramp-Up Período informa JMeter quanto tempo para atraso antes de iniciar o próximo usuário. Por exemplo, se tivermos 100 usuários e um intervalo de 100 segundos Ramp-Período de ativação, então o atraso entre usuários iniciais seria de 1 segundo (100 segundos/100 usuários)

Adicionar grupo de threads

Etapa 2) Adicionando JMeter elementos

Agora determinamos o que JMeter elementos deste teste. Os elementos são

  • Solicitação HTTP Padrão

Este elemento pode ser adicionado clicando com o botão direito no Thread Group e selecionando: Adicione -> Elemento de configuração -> Padrões de solicitação HTTP.

Adicionando JMeter elementos

No painel de controle Padrões de solicitação HTTP, insira o nome do site em teste (http://www.google.com)

Adicionando JMeter elementos

  • Solicitação HTTP

Clique com o botão direito em Grupo de threads e selecione: Adicione -> Sampler -> Solicitação HTTP.

Solicitação HTTP

No Painel de Controle de Solicitação HTTP, o campo Caminho indica qual URL solicitar você deseja enviar para Google servidor.

Solicitação HTTP

Por exemplo, se você inserir “calendário”No campo Caminho. JMeter irá criar o URL solicitar http://www.google.com/calendar para Google servidor

Solicitação HTTP

Se você mantiver o campo Caminho em branco JMeter irá criar o URL solicitar http://www.google.com para Google servidor.

Neste teste, você mantém o campo Caminho em branco para fazer JMeter crie o URL solicitar http://www.google.com para Google servidor.

Etapa 3) Adicionando resultado do gráfico

JMeter pode mostrar o resultado do teste em formato gráfico.

Clique com o botão direito em Plano de Teste, Adicione -> Ouvinte -> Resultados do gráfico

Adicionando Resultado Gráfico

Etapa 4) Execute o teste e obtenha o resultado do teste

Imprensa a corrida botão (Ctrl + R) na barra de ferramentas para iniciar o processo de teste de software. Você verá o resultado do teste exibido no gráfico em tempo real.

A figura abaixo apresenta um gráfico de um plano de teste, onde simulamos 100 usuários que acessaram no site www.google.com.

Execute o teste e obtenha o resultado do teste

Na parte inferior da imagem, estão as seguintes estatísticas, representadas em cores:

  • Preto: O número total de amostras atuais enviadas.
  • Azul: A média atual de todas as amostras enviadas.
  • Vermelho: O desvio padrão atual.
  • Verde: taxa de transferência que representa o número de solicitações por minuto que o servidor atendeu

Vamos analisar o desempenho de Google servidor na figura abaixo.

Execute o teste e obtenha o resultado do teste

Para analisar o desempenho do servidor web em teste, você deve focar em 2 parâmetros

  • Produtividade
  • Desvio

O Produtividade é o parâmetro mais importante. Representa a capacidade do servidor de lidar com uma carga pesada. O superior o rendimento é, o better é o desempenho do servidor.

Neste teste, a taxa de transferência de Google O servidor tem uma taxa de atualização de 1,491.193/minuto. Isso significa Google O servidor consegue processar 1,491.193 requisições por minuto. Esse valor é bastante alto, então podemos concluir que Google O servidor tem um bom desempenho.

O desvio é mostrado em vermelho – indica o desvio da média. O menor da better.

Vamos comparar o desempenho de Google servidor para outros servidores web. Este é o resultado do teste de desempenho do site. http://www.yahoo.com/ (Você pode escolher outros sites)

Execute o teste e obtenha o resultado do teste

O rendimento de um site em teste http://www.yahoo.com é 867.326/minutos. Isso significa que este servidor processa 867.326 solicitações por minuto, menos que Google.

O desvio é 2689, muito maior que Google (577). Portanto, podemos determinar que o desempenho deste site é inferior a um Google servidor.

OBSERVAÇÃO: Os valores acima dependem de vários fatores, como a carga atual do servidor em Google, sua velocidade de internet, a potência da sua CPU, etc. Portanto, é muito improvável que você obtenha os mesmos resultados que os acima. Então, não se preocupe! Se você estiver interessado em entender como a carga do servidor impacta o desempenho e como testá-lo, você pode achar isto interessante. tutorial de teste de carga útil.

guia de solução de problemas

Se você enfrentar o problema ao executar o cenário acima… faça o seguinte

  1. Verifique se você está se conectando à Internet por meio de um proxy. Se sim, remova o proxy.
  2. Abra uma nova instância do Jmeter
  3. Abra o DesempenhoTestPlan.jmx em Jmeter
  4. Double Clique em Grupo de Threads -> Resultado do Gráfico
  5. Execute o teste

Perguntas Frequentes

A taxa de transferência é o número de solicitações. JMeter conclusões por segundo; maior taxa de transferência significa que o servidor lida com mais carga.

Uma única JMeter Uma instância simula centenas a alguns milhares de usuários; testes distribuídos em várias máquinas escalam para dezenas de milhares.

JMeter é gratuito, de código aberto e JavaO LoadRunner é baseado em protocolos, enquanto o LoadRunner é comercial, com suporte a protocolos mais amplos e análise avançada.

Sim. A IA lê. JMeter Os gráficos de resultados detectam anomalias e gargalos e relacionam respostas lentas aos níveis de carga.

A IA gera modelos de carga de trabalho realistas, ajusta automaticamente as configurações de threads e de aumento gradual de desempenho e prevê a capacidade com base em dados históricos.

Resuma esta postagem com: