Jmeter实现分布式并发

Jmeter实现分布式并发,即使用远程机执行用例。

环境:
VMware Fusion

Windows系统是win7。

操作过程

1、Master在jmeter.properties添加remote_hosts

 

2、Slave在jmeter.properties添加server_port

同时把remote_hosts修改为和主机(Master)一样

 

 

3、Slave启动jmeter-server

jmeter-server -Djava.rmi.server.hostname=192.168.0.102

这里直接说正确的做法了。如果你执行的是jmeter-server,那后面会报错。

这时候在Master上选择远程执行,就会有远程选项了。

 

 

解决报错一:启动jmeter-server报错

 

 

意思就是找不到rmi_keystore.jks这个文件。如果你版本早的话应该不会报这个错。

解决方法:

你的Jmeter/bin目录下有个create-rmi-keystore.bat文件,在命令行中执行这个文件

create-rmi-keystore.bat

然后就可以生成这个rmi_keystore.jks文件了。而且发现Jmeter server也成功启动了。

 

 

 

 

再次执行,仍然报错:

 

 

解决

在master和salve的jmete.properies中打开找到

#server.rmi.ssl.disable=false

给变更成

server.rmi.ssl.disable=true

重启。

可是无论怎么执行,Master都没有返回结果,似乎也没有执行,因为查看结果树里面是空的。用了两个小时,终于解决了,其实就是把那个rmi_keystore.jks复制到你的Master Jmeter/bin的文件夹下,就解决了。

执行以后如果没有Response data就打开jmeter.properties文件,找到mode=Standard,去掉前面的#,重新启动jmeter

 

 

最后强调一下,每次你修改完jmeter.properties都要重启jmeter。

整个过程百度了很多次,网上的解决办法也是多种多样让人头疼,还有说要禁用VMware网卡,这些我都没有理会。

总结一下

1、修改Master和Slave机的remote_hosts

2、修改Master和Slave机的jmeter.properties

1、修改

3、把生成的rmi_keystore.jks文件复制到Master

然后再Slave端打开服务:

jmeter-server -Djava.rmi.server.hostname=Slave的IP地址

在Master端打开jmeter即可。Master端直接运行jmeter就行,不需要加参数。

公众号:自动化测试实战

 

posted @ 2022-02-22 15:48  孟船长  阅读(226)  评论(0编辑  收藏  举报