"Muahaha"!!!!
Já que vamos estressar nosso software fique atento as seguintes situaçoes:
1) o ambiente que vamos utilizar é o mais próximo possível do real?
2) caso negativo existe a possibilidade de simularmos esse ambiente? (Quando falo em ambiente não me refiro somente a base e versão do seu software, mas sim a infraestrutura, middleware).
3) Existe a possibilidade de executar esses testes em produção? Se sim combine com o negócio e as áreas envolvidas e teste em janelas que tem impacto.
Feito isso vamos aos testes.
O primeiro passo é fazermos download do Jmetter:
A sua instalação é muito simples, basta apenas descompactar o arquivo e usar o jar.
Ao abrir o jmetter vemos a separação de dois grupos:
- Plano de Teste
- Área de Trabalho
Basicamente essa divisão serve para uma melhor organização. A área de trabalho é como se fosse uma área de rascunho, de testes. Já o plano de teste é aquilo que você realmente vai executar quando der um play.
Um exemplo simples, é quando precisamos configurar um proxy para captura, usamos a área de trabalho. Quando temos os artefatos necessários os colocamos em um Grupo de Usuários no Plano de Teste.
Se você já sabe o que vai precisar testar, quais urls vai utilizar (com suas variáveis, seus métodos, exe: GET, POST), podemos direto utilizar a opção de plano de teste.
Caso ao contrario, você pode capturar essas informaçõee, estarei mostrando como fazer isso em um próximo Post.
Passo a passo para quem está começando:
Na opção Plano de Teste clique com o botão direito e vá em -> Adicionar-> Thread(Users)-> Grupo de Usuários.
Você pode colocar o nome desse grupo de usuários conforme a sua necessidade.
Nessa tela nós temos uma série de opções, parte delas estão relacionadas a ações se houver falha e outra parte as configurações dos usuários virtuais. Vamos nos concentrar mais na configuração dos usuários.
- Número de Usuários Virtuais: Com quantos usuários vamos simular o teste;
- Tempo de inicialização em segundos: Tempo total de inicialização dos usuários. Se você colocar 200 usuário e 1 segundo o jmetter vai inicializar todos ao mesmo tempo;
- Contador de Iteração: Quantas iterações (pense como laços de repetição) irão serem necessárias a cada usuário para que o teste finalize.
Indico que para começarmos a brincadeira, que deixemos um usuário virtual e as outras opções o default.
O próximo passo é adicionarmos um gerenciador HTTP, que será o responsável pelo gerenciamento de sua conexão.Nele é possivel configurar o User Agent que iremos simular no teste.
Para isso vá em Grupo de Trabalho clique com o botão direito e então vá em Adicionar->Elemento de Configuração-> Gerenciador de cabeçalho http:
O user agent vai variar de acordo com o que você quer simular.
Esse geralmente é o que eu uso:
User-Agent | Mozilla/5.0 (X11; Linux x86_64; rv:12.0) Gecko/20100101 Firefox/12.0 |
User-Agent | Mozilla/5.0 (iPhone; U; CPU iPhone OS 4_3_2 like Mac OS X; en-us) AppleWebKit/533.17.9 (KHTML, like Gecko) Version/5.0.2 Mobile/8H7 Safari/6533.18.5 |
Vamos adicionar nossos testadores, para isso clique com o botão direito sobre o Grupo de usuários e vá em Adicionar-> Testador> Requisição HTTP
- Nome para a requisição (qualquer nome que identique bem a etapa do teste para você)
- Nome do Servidor: aqui você coloca somente o dominio.
- Caminho: O resto da URL.
Nesse ponto já podemos dar um play.
No momento que deres play, verás que o contador a direita irá ficar 1/1 e logo em seguida 0/1.
E se seu site estiver ok, nenhum alerta seá contado:
Vamos adicionar alguns ouvintes para vermos o que está sendo executado. Há várias opções de ouvintes, eu gosto de usar duas: View Results Three e Simple Data Writer
Para adicioná-los vamos clicar com o botão direito sobre o Grupo de usuários e ir em Adicionar->Ouvintes->View Results Three
Se dermos play novamente, podemos ver o retorno do teste:
Podemos escolher o que queremos que seja exibido, se somente erro, sucesso ou ambos. Também é possivel exibir não somente o texto de resposta mas fazer download dos resources e exibir o html
Podemos também gerar um relatório desses testes, com um Simple Data Writer.
Adicionar->Ouvintes->View Results Three
Nesse tipo de escritor, todos os resultados dos seus testes ficarão armazenados em um arquivo. Uma dica legal é usar parametros para sempre gerar um novo arquivo. Para isso adicione parametros como data e hora no nome do arquivo: D:\JMETTER\TesteGuriatech_${__time(YMDHMS)}.xls
O basicão é isso.
O proximo passo é começarmos a brincar com os temporizadores e alguns parametros nos testadores. Isso fará com que o nosso teste fique mais real, visto que nossos usuários não irão entrar todos ao mesmo tempo e executar todos os links no mesmo momento.
Sem o temporizador é isso que o jmetter tenta fazer, colocar todos a rodar.
Enquanto isso podemos ir adicionando mais requisições HTTP, e aumentando o número de usuários virtuais.
Divirtam-se!
No próximo post sobre Jmetter vou falar um pouco desses temporizadores e dos parametros para as requisições http.
Ficou com dúvida?
Escreva nos comentários abaixo que respoderei!
Nenhum comentário:
Postar um comentário