Grinder是一个开源的Java负载测试框架,它通过很多负载注射器来为分布式测试提供了便利。
● 支持用于执行测试脚本的Jython脚本引擎。
● HTTP测试可通过HTTP代理进行管理。
该项目主页:
http://grinder.sourceforge.net/
详细资料,软件下载,请浏览上面的主页
工具的使用:
第一步:设置环境变量
下载Grinder,并解压. Download page: http://grinder.sourceforge.net/download.html
设置系统环境变量:
GRINDERPATH=grinder的完整路径
CLASSPATH=%GRINDERPATH%\lib\grinder.jar
(在grinder的目录下新建一个目录叫properties并在该目录下新建文件grinder.properties)
GRINDERPROPERTIES=%GRINDERPATH%\properties\grinder.properties
有关配置文件请参考:http://grinder.sourceforge.net/g3/properties.html
第二步:如何启动Console和Agent process
设置好环境变量后就可以启动grinder了,grinder分为三个部分,分别是控制台(console)、代理进程(agent processes)和HTTP代理(HTTPProxy)
启动的命令分别为:
Console:java -cp %CLASSPATH% net.grinder.Console Agent process:java -cp %CLASSPATH% net.grinder.Grinder %GRINDERPROPERTIES% |
控制台不会去读grinder.properties配置文件,它有自己的设置会话窗口,你可用它设置会话地址和端口。控制台可以触发测试脚本,然后代理进程会产生工人线程进行测试。
Agent process启动后会自动连接控制台,相当于客户机连接服务器,所有的代理进程由控制台统一控制,所以控制台只能启动一个,但代理进程可以启动多个并位于不同的机器上。控制台可以指定所有代理进程使用的测试脚本,如果控制台没有指定代理进程要使用的测试脚本,代理进程会去读取自己本地的 grinder.properties配置文件中指定的脚本执行测试。
有关测试脚本的编写请参考:http://grinder.sourceforge.net/g3/tutorial-perks.html