JMeter分布式测试环境搭建(禁用SSL)

时间:2021-01-13 21:41:26

JMeter分布式环境,一台Master,一到多台Slave,Master和Slave可以是同一台机器。

前提条件:

所有机器,包括master和slave的机器:

1.运行相同版本的JMeter

2.使用相同的java版本

3.有基于SSL的RMI的有效密钥库,或者禁用SSL。(本文举例中是采用的禁用SSL)

4.都在一个网络

5.关闭防火墙

三种情形举例:

每种情形按照以下方式配置好之后,需要在slave的机器上启动jmeter-server.bat,在master机器上启动JMeter的界面执行case进行调试。

注意:

slave的机器上可以不放jmeter的脚本,但如果有用到测试数据,就必须把测试数据放到slave机器上去,JMeter中文件的路径得用绝对路径,这点不太方便。

我的想法是如果把JMeter的工程配成Maven工程就可以完美的解决这个问题。

1.Master和Slave是同一台机器

  • 修改jmeter.properties

  remote_hosts=127.0.0.1:1099
  server.rmi.ssl.disable=true (关闭RMI)

2.Master和Slave不是同一台

Master:10.86.16.218

  • 修改jmeter.properties (用默认端口1099)

  remote_hosts=10.86.16.81:1099,10.86.17.82:1099
  server.rmi.ssl.disable=true (关闭RMI)

  • 在system.proerties的最后加一行

  java.rmi.server.hostname=10.86.16.218

Slave1:10.86.16.81
Slave2:10.86.17.82

  • 修改jmeter.properties

  server.rmi.ssl.disable=true

  • 在system.properties的最后加一行

  以Slave1举例,其他Slave也要这么配
  java.rmi.server.hostname=10.86.16.81

3.Master和Slave不是同一台

Master:10.86.16.218

  • 修改jmeter.properties (用自定义端口,举例:80)

  remote_hosts=10.86.16.81:80,10.86.17.82:80
  server.rmi.ssl.disable=true (关闭RMI)

  • 在system.properties的最后加一行

  java.rmi.server.hostname=10.86.16.218

Slave1:10.86.16.81
Slave2:10.86.17.82

  • 修改jmeter.properties

  server.rmi.ssl.disable=true
  server_port=80

  • 在system.properties的最后加一行

  以Slave1举例,其他Slave也要这么配
  java.rmi.server.hostname=10.86.16.81

成功的标志:

1.JMeter Master的界面上,远程启动菜单可以看到配置的所有的slave

JMeter分布式测试环境搭建(禁用SSL)

3.Slave上jmeter-server.bat启动的控制台没有报错,显示测试的开始和结束

JMeter分布式测试环境搭建(禁用SSL)

4.Slave上的日志\apache-jmeter-5.2.1\bin\jmeter-server.log可以看到脚本执行的信息,没有报错

JMeter分布式测试环境搭建(禁用SSL)

5.Master上通过JMeter界面启动远程执行时,结果树可以看到命令成功返回

JMeter分布式测试环境搭建(禁用SSL)