Teste de carga com JMeter – Instalação e configuração

teste de carga com jmeter

O JMeter é uma ferramenta open source para criação e execução de testes de stress, carga e desempenho. Os objetivos desse tipo de teste são descobrir a performance e o desempenho de um serviço quando exposto a uma carga específica, avaliar a carga máxima suportada pelo servidor e descobrir pontos de gargalo nas requisições.
O JMeter utiliza o conceito de usuários virtuais, que simulam usuários reais executando ações determinadas pelo script.

Instalação

O JMeter é uma ferramenta desenvolvida em Java. Por esse motivo, é necessário que sua máquina tenha Java instalado.
Cada versão do JMeter tem suas particularidades e restrições quanto à versão do Java instalado. Em geral, os releases mais recentes possuem todas as funções da última versão. que é a 3.1. Porém, um script gravado em alguma versão antiga pode não abrir em uma versão mais nova.

No meu caso, estou usando um Windows 10 com Java 8. Só que o JMeter funciona em outras versões do Windows e também em distribuições do Linux. A versão 3.1 necessita de, no mínimo, Java 7 instalado — lembrando que esse pré-requisito é válido para o JMeter disponibilizado pela Apache Software Foundation. Alguns plug-ins ou bibliotecas adicionais podem aumentar a lista de requisitos.
Para instalar o Java, basta entrar neste link, aceitar os termos de licença e escolher o download da versão do seu Windows, assim como na imagem.

Após a instalação do Java, podemos finalmente instalar o JMeter — que na verdade não necessita de um setup. Só precisamos baixar o cliente neste link (como no exemplo da figura) e aguardar o download.

Depois de concluir o download, o próximo passo é descompactar a pasta apache-jmeter-x.y para um local de sua preferência. O arquivo do JMeter se encontra dentro da pasta bin com nome de JMeter. É um arquivo com extensão bat.

Configuração

Em geral, a criação de um script com o JMeter é bem simples. Nessa primeira parte, iremos fazer as configurações básicas para, no próximo post, finalmente criar os scripts.
A primeira coisa a certificar é que existe permissão de liberar portas e que existam portas não utilizadas — a porta 80, por exemplo, não irá funcionar. Geralmente, esse requisito é bem fácil de ser atingido. Precisaremos disso simplesmente para criar um proxy com o browser.
Existem outras formas de criar seu script, mas essa é a mais simplificada e você poderá usá-la em 90% dos seus scripts.
O primeiro passo de qualquer script é a preparação para gravar o cenário. Os passos são os seguintes:

  • Configure o proxy no browser com a porta que você escolheu — eu uso geralmente o Mozilla Firefox (que tem as configurações de proxy independentes das do Google Chrome e Edge/Explorer) — e a porta 3024.
    Vá em “Opções” e Avançado, ou digite about:preferences#advanced e dê enter.
    Na aba “Rede”, clique em “Configurar conexão”.
    Marque “Configuração manual do proxy”, preencha como a imagem e clique Ok.
    Lembre-se sempre de limpar o cache antes de iniciar os testes.

  • No JMeter, em Plano de Teste, crie um Grupo de Usuários, que é onde todas as requisições enxergadas pelo nosso proxy serão gravadas. (Botão direito em Plano de Testes -> Adicionar -> Threads (Users) -> Grupo de Usuários).

  • Ainda no JMeter, mas na Área de Trabalho, crie um Servidor HTTP Proxy com as configurações da imagem. Crie também uma árvore de resultados adicionando com o botão direito -> Ouvinte -> Árvore de Resultados.


Conseguimos fazer as configurações básicas para criar nosso primeiro script. Nos próximos posts, vamos criar scripts explorando ainda mais as funcionalidades da ferramenta.
Continue acompanhando e até o próximo post!

0 comentários
    1. Obrigado André ! Depois dá uma olhada na segunda parte do post e dê um feedback !!
      Vou tentar abordar mais coisas sobre o assunto em outros posts!
      Abraçao!

  1. Ótimo artigo!
    Gostaria de saber se consigo realizar um teste de performance com o Jmeter em um servidor na nuvem? Tenho um cenário onde tenho uma aplicação .exe em Delphi que realiza requisições em um servidor na nuvem.

    1. Olá Cristiano. Obrigado pelo elogio e perdão pela demora a responder.
      O JMeter consegue realizar requisições em servidores em nuvem de forma remota tranquilamente. Por exemplo quando quero dividir a carga entre várias máquinas em nuvem para disparar o script sem consumir toda memória de uma máquina somente. Sem conhecer exatamente como funciona sua aplicação e o funcionamento desse servidor é complicado te dar um diagnóstico exato do que pode ou não ser feito, mas vamos lá.
      Pelo que entendi sua ideia é executar um .exe várias vezes pelo JMeter, e pelo meu conhecimento com a ferramenta, acho que isso não é possível.
      Uma possibilidade – que não sei se resolve seu problema – é ter um client Delphi que conecta a um servidor usando HTTP. Isso é possível de fazer com o JMeter.

  2. Bom dia,
    Estou seguindo o Tutorial mas ao abrir o JMeter exibe todos os itens citados exceto o \”Área de Trabalho\”, só mostra o Plano de teste.
    Poderia me auxiliar?
    Obrigado

    1. Olá Felipe ! Perdão pela demora a responder.
      Baixei a última versão e vi que o layout do JMeter está diferente.
      Para fazer o processo é só clicar com botão direito no Plano de Testes > Adicionar > Elementos que não são testes > Servidor HTTP Proxy
      E ai pode seguir o processo igual ao do tutorial.
      Aguardo feedback pra ver se deu certinho!
      Abraços,

  3. Olá Alexandre,
    De forma simplificada, tenho um cliente java que se conecta a um servidor com Socket.
    Este cliente manda a cada segundo um número a ser armazenado.
    O servidor é capaz de gerenciar várias conexões de clientes.
    Como simular vários clientes usando o JMeter?
    Obrigado desde já.

Deixe uma resposta

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *

Talvez você goste desses conteúdos também: