Jmeter下载
下载地址:https://archive.apache.org/dist/jmeter/binaries/
windows版本:apache-jmeter-5.1.1.zip
linux版本:apache-jmeter-5.1.1.tgz
Jmeter环境配置
windows环境变量:
JMETER_HOME=D:\myprogramfiles\apache-jmeter-5.1.1
CLASSPATH=%JMETER_HOME%\lib\ext\ApacheJMeter_core.jar; %JMETER_HOME%\lib\jorphan.jar;
path=%JMETER_HOME%\bin
linux环境变量:
# jmeter 环境变量
export JMETER_HOME=/usr/local/jmeter/apache-jmeter-5.1.1
export CLASSPATH=$JMETER_HOME/lib/ext/ApacheJMeter_core.jar:$JMETER_HOME/lib/jorphan.jar:$CLASSPATH
export PATH=$JMETER_HOME/bin:$PATH
分布式环境配置
以一台widows作为调度机master,虚拟机作为远程的执行机slave机器。
调度机master配置:
进入jmeter解压包bin目录,编辑jmeter.properties文件,修改以下内容:
remote_hosts=127.0.0.1 改为 remote_hosts=remote_hosts=192.168.157.139:1099,192.168.157.131:1099,上面的ip是执行机的ip及其端口。
#server_port=1099 去掉注释,改为
server_port=1099
#server.rmi.ssl.disable=false 去掉注释并改为
server.rmi.ssl.disable=true
执行机slave配置:
进入jmeter解压包bin目录,编辑jmeter.properties文件,修改以下内容:
vi jmeter.properties
#remote_hosts=127.0.0.1 改为
remote_hosts=192.168.157.131:1099
#server_port=1099 改为
server_port=1099
#server.rmi.localport=4000 改为
server.rmi.localport=1099
#server.rmi.ssl.disable=false 改为
server.rmi.ssl.disable=true
编辑jmeter-server文件,修改以下内容:
vi jmeter-server
#RMI_HOST_DEF=-Djava.rmi.server.hostname=xxx.xxx.xxx.xxx 改为
RMI_HOST_DEF=-Djava.rmi.server.hostname=192.168.157.131,ip是当前执行机自己的IP
执行机slave配置启动:
进入bin目录,执行以下命令启动执行机
./jmeter-server
调度机master执行脚本:
启动所有从机执行脚本
jmeter -n -t xxx\login.jmx -r -l xxx\result.jtl -e -o xxx\result
或者指定从机IP
jmeter -n -t xxx\login.jmx -R 192.168.157.131,192.168.157.139 -l xxx\result.jtl -e -o xxx\result
上面命令中:
xxx\login.jmx 是jmx脚本的文件路径
xxx\result.jtl 是执行jmx脚本生成的jtl脚本文件的路径及其命名
xxx\result 是生成报告的存放路径
-R表示选择执行=远程启动
-r 表示启动所有执行机=远程全部启动
-n :以非GUI形式运行Jmeter
-t :source.jmx 脚本路径
-l :result.jtl 运行结果保存路径(.jtl),此文件必须不存在,重新执行需要手动删除已经生成的jtl文件
-H : 设置Jmeter使用的代理主机
-P : 设置Jmeter使用的代理主机的端口
-e :在脚本运行结束后生成html报告
-o :用于存放html报告的目录
这样就可以启动测试了。 但是启动之前要求result.jtl这个文件不存在,所以要注意运行前删除这个文件
参数文件设置
参数化路径
比如,参数化文件在自定义目录下,参数化文件名为ips.txt
如果在win上,路径为:D:\myprogramfiles\apache-jmeter-5.1.1\datas\plan\ips.txt
如果在linux上,路径为:/usr/local/jmeter/apache-jmeter-5.1.1/bin/ips.txt
在linux上执行使用linux路径path_linux_ips,在windows上执行改下windows的路径path_win_ips
注意:
调度机和执行机需要可以互相ping通
脚本测试的ip也需要在执行机可以ping通
分布式执行的总线程数等于脚本线程组设置的线程数乘以执行机数量
参考:
http://t.zoukankan.com/lianstyle-p-10273282.html
http://t.zoukankan.com/qlling-p-13647124.html
https://blog.51cto.com/qzcsbj/5016401
https://blog.csdn.net/xieyukun135/article/details/111027478