segunda-feira, 7 de janeiro de 2008

Lendo propriedades de arquivo no JMeter

Praticamente todo mundo já leu alguma coisa sobre JMeter, ou já viu alguma apresentação em um dos vários eventos Java no país, ou até mesmo já colocou a mão na massa para realizar algum teste de stress com esta ferramenta. De fato, é muito simples realizar um teste de stress básico com JMeter, até mesmo em sistemas web.

Porém, o JMeter possui muitas características para incrementar seus testes de stress e deixá-los muito poderosos, como testes distribuídos, variáveis e funções, beanshell, etc...

Neste post irei mostrar como ler propriedades de um arquivo texto utilizando o componente CSV Data Set Config (element -> config).

Declarando as propriedades

O config CSV Data Set Config é atualmente a forma mais simples de ler propriedades de um arquivo, para isso, basta criar um arquivo texto com valores separados por vírgula.

Exemplo:
a1, b1, c1

Adicione o CSV Data Set Config em sua Thread Group configurando as propriedades da seguinte forma:



Filename: path do arquivo texto, ex: "../teste.txt" (os paths relativos são resolvidos a partir com o path do test plan ativo, também pode-se utilizar path absoluto)
Variable names: "a,b,c" (este será o nome das propriedades utilizadas para acessar os valores)
Delimiter (use '\t' for tab): ","

Exibindo propriedades

A partir da versão 2.3.1 foi adicionado o componente Debug Sampler o qual lista diversas coisas, entre elas, os valores das variáveis do arquivo.

Adicione o Debug Sampler em seu Thread Group (sampler -> debug sampler), e adicioner também um View Results Tree. O Debug Sampler irá trabalhar em conjunto com o View Results Tree, exibindo separadamente os valores referentes a cada request.

Abaixo está o resultado de um teste simples com leitura de propriedades de um arquivo.


Links relacionados
http://jakarta.apache.org/jmeter/usermanual/component_reference.html#CSV_Data_Set_Config
http://jakarta.apache.org/jmeter/usermanual/functions.html
http://jakarta.apache.org/jmeter/usermanual/component_reference.html#Debug_Sampler

Nenhum comentário: