jmeter分布式测试
(1)简单理解,就是一台执行机分担不了的负载,分到若干台执行机一起执行
(2)任务和脚本分发由控制机执行,脚本里面设置的线程数是在每一台执行机执行的数量,不要弄错了
(3)然后执行机执行的结果会在控制机进行汇总,总结
前期工作:控制机和执行机部署
控制机(一般是Windows系统):
1.修改jmeter.properties属性文件
(1)关闭ssl校验
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
(2)添加执行机ip:port(默认1099),多台执行机直接用“,”隔开
# Remote Hosts - comma delimited
remote_hosts=192.168.2.8:1099,192.168.11.0:1099
2.关闭防火墙
执行机(一般是Linux系统):
1.把控制机的jmeter复制到执行机(完全copy)
2.修改jmeter.properties属性文件
(1)关闭ssl校验:修改
# Set this if you don't want to use SSL for RMI
server.rmi.ssl.disable=true
(2)添加本机:port(默认1099)
# Remote Hosts - comma delimited
remote_hosts=192.168.2.8:1099
3.关闭防火墙(以centos7为例)
systemctl status firewalld.service查看防火墙状态
systemctl stop firewalld.service 关闭运行的防火墙
4.执行jmeter-server
./jmeter-server
如果提示权限不允许,请执行chmod -R 777 jmeter(包名)
重要:控制机和执行机之间,要相互能ping通
运行jmeter脚本
1.gui模式:远程启动执行机运行jmeter脚本(jmeter脚本不需要手动copy到执行机)
2.非gui模式:
(1)Jmeter参数
-n :非GUI模式执行
-t:执行测试文件所在的位置及文件名
-r:启动远程所有执行机执行脚本
-R:启动指定远程执行机执行脚本,不同执行机之间用“,”分开
-l:指定生成测试结果的保存文件,jtl文件格式
-e:测试结束后,生成测试报告
-o :指定测试报告的存放位置,指定的文件及文件夹,必须不存在,否则执行会失败
(2)非GUI模式运行jmeter脚本
备注:测试之前要把上一次测试结果清掉