DevOps – Criando um Load Test (Teste de Carga ou de Desempenho) usando o JMETER e o Application Insights

Introdução

Criei esse artigo para auxiliar na criação de um Teste de Desempenho ou Carga (Load Test) usando duas ferramentas ideais para esse teste. Esse artigo saiu depois de uma conversa que eu tive com o André Dias acerca do uso dessas duas potentes ferramentas e a facilidade delas para realizar testes e acompanhar o desempenho de seu Site Web ou Application Web em vez de utilizar manualmente logs do Windows como os contadores de desempenho por exemplo.

Cenário

Esses passos simulam que seu Application Web ou Web Site está instalado em um Servidor Local ou IaaS do Azure, pois se fosse um Web Application do Azure (PaaS) a opção de utilizar o Application Insights já estaria disponível no portal do Azure.

Veja mais informações e dicas no site abaixo:

Monitorar o desempenho do aplicativo Web do Azure (Azure Web Apps)

Passos

O primeiro passo é a configuração e instalação de Application Insights em sua assinatura e seu servidor.

– Habilitando o Application Insights para monitorar um Portal Web no Iaas do Azure já em funcionamento ou em seu servidor local da empresa.

Vá no Portal Azure em Novo e digite Application Insights e selecione a opção.

clip_image002

Clique em Criar.

Escolha um nome, tipo de aplicativo, assinatura, grupo de recursos e localização

clip_image003

Em seguida clique em Criar. Pronto o Application Insights está ativo em sua assinatura para receber os logs do agente.

Depois de criado, iremos configurar o agente. Para isso baixe o seguinte agente no seu servidor.

http://go.microsoft.com/fwlink/?LinkId=506648

Em seguida execute o instalador. (Lembrando que o agente precisa do .NET 4.5 intalado no servidor)

clip_image005

Depois de instalado, execute o agente e selecione seu Web Site que você irá configurar (coletar as informações) e digite o logon e e senha que você configurou o Application Insights acima.

clip_image007

Habilite seus sites no Resource Group que você criou no início desse artigo.

image

Depois reinicie seu IIS para que as configurações tenham efeito.

Pronto agora que seus sites estão sendo monitorados pelo Application Insights iremos configurar o JMETER para executar os Load Testes.

Configurando o JMETER para executar seus Load Tests.

Faça o download do JMETER aqui:

http://jmeter.apache.org/download_jmeter.cgi

Extraia o JMETER em um diretório.

Para executar o JMETER vá até o diretório BIN e execute o arquivo .BAT chamado JMETER. Ele em execução crie um Plano de Testes de STRESS para seu Web Site.

clip_image002[4]

Coloque um nome em seu Plano de Teste.

clip_image003[4]

Coloque os executores (Threads) ou Usuários. Clique com o botão direito do mouse em cima do Plano de Teste.

clip_image004

Dê um nome para seu grupo de threads e defina a quantidade de usuários que irão conectar em seu site, o tempo de execução desses usuários (a cada 05 segundos por exemplo) e quantas vezes (sempre) por exemplo ou em segundos.

clip_image005

Em seguida, clique com o botão direito do seu mouse em cima da Thread e selecione ADD –> Sampler –> HTTP Request

clip_image006

E coloque os dados do seu site de teste.

clip_image008

Em seguida adicione um gráfico indo em Threads –> ADD –> Listener –> Graph Results

clip_image010

Você pode salvar os resultados também em uma Tabela ou em Árvore, para isso vá em ADD –> Listener –> View Results in Table e também em View Results Tree

clip_image011

Depois acompanhe os resultados:

clip_image013

clip_image015

clip_image017

Principalmente, acompanhe os resultados no Application Insights.

clip_image019

image

Você pode utilizar diversas funções do JMETER conforme sua necessidade, inclusive caso necessário configurar Logon caso seu site precise de logon para realizar o acesso.

Outra opção legal é Você também pode integrar o JMETER no VSTS seguindo os passos abaixo do Blog do MSDN, carregando seus planos de testes criados no JMETER (scripts) diretamente no TFS.

Indo em Test –> Load Test –New – Carregando seus Planos de Testes do JMeter (scripts)

image

image

Saiba mais no Blog do MSDN abaixo.

https://blogs.msdn.microsoft.com/visualstudioalm/2016/02/27/running-apache-jmeter-based-load-tests-in-the-cloud-how-to/

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s