运行jmeter
下载和安装
从apache jmeter的下载页面下载对应平台的版本。
最新稳定版本是2.13.
下载完成后,直接解压缩即可使用。
当前,jdk是要预先准备好的。目前jmeter对jdk版本的要求非常之地,jdk6及以上都可以。另外需要设置好JAVA_HOME。
运行Jmeter
启动脚本
进入jmeter/bin目录下,找到jmeter.bat (Windows) 或 jmeter (Unix)。
还有一些其他脚本可以使用。
适用于windows的:
- jmeter.bat - 运行 JMeter (默认GUI模式)
- jmeterw.cmd - 不带windows shell console的运行 JMeter(默认GUI模式)
- jmeter-n.cmd - 拖拽一个 JMX 文件到这里来运行一个 non-GUI 测试
- jmeter-n-r.cmd - 拖拽一个 JMX 文件到这里来运行一个远程 non-GUI 测试
- jmeter-t.cmd - 拖拽一个 JMX 文件到这里以GUI 模式运行
- jmeter-server.bat - 以server模式运行jmeter
- mirror-server.cmd - 以non-GUI模式运行JMeter Mirror Server
- shutdown.cmd - 运行Shutdown客户端来优雅的停止non-GUI实例
- stoptest.cmd - 运行Shutdown客户端来优粗暴的停止non-GUI实例
Un*x 脚本文件, 可以在大多数Linux/Unix系统中工作:
- jmeter - 运行 JMeter (默认GUI模式). 定义了一些jvm设置,可能无法在所有的jvm中工作.
- jmeter-server - 以server模式运行jmeter (以合适的参数调用jmeter 脚本)
- jmeter.sh - 非常基本的JMeter脚本 (可能需要调整JVM参数比如内存设置).
- mirror-server.sh - 以non-GUI模式运行JMeter Mirror Server
- shutdown.sh - 运行Shutdown客户端来优雅的停止non-GUI实例
- stoptest.sh - 运行Shutdown客户端来优粗暴的停止non-GUI实例
特别对照了一下jmeter和jmeter.sh,看到在jmeter中,比jmeter.sh要设置了一些参数:
HEAP="-Xms512m -Xmx512m"
TENURING="-XX:MaxTenuringThreshold=2"
if [ $current_version -lt "8" ]; then
PERM="-XX:PermSize=64m -XX:MaxPermSize=128m"
fi
CLASS_UNLOAD="-XX:+CMSClassUnloadingEnabled"
DUMP="-XX:+HeapDumpOnOutOfMemoryError"
SERVER="-server"
ARGS="$SERVER $DUMP $HEAP $NEW $SURVIVOR $TENURING $EVACUATION $PERM $CLASS_UNLOAD"
java $ARGS $JVM_ARGS $JMETER_OPTS -jar "$PRGDIR/ApacheJMeter.jar" "$@"
而jmeter.sh中则没有这些设置:
java $JVM_ARGS $JMETER_OPTS -jar "$PRGDIR/ApacheJMeter.jar" "$@"
建议:平时用jmeter这个脚本启动jmeter,如果需要调整参数也方便。
设置JVM参数
注:上面的jmeter和jmeter.sh文件都很奇怪的没有设置JVM_ARGS。
设置启动jmeter的jvm参数,可以有两种方式:
在命令行中临时修改
JVM_ARGS="-Xms1024m -Xmx1024m -Dpropname=propvalue" jmeter -t test.jmx
直接修改jmeter文件内容
在jmeter的最后一行java命令前,加入一行:
JVM_ARGS="-Xms1024m -Xmx1024m -Dpropname=propvalue"