代码改变世界

24. Jmeter GUI 及NON GUI实现分布式

2018-07-03 18:29  软件测试汪  阅读(275)  评论(0编辑  收藏  举报

什么是分布式:

Jmeter的集群模式可以让我们将多台机器联合起来一起产生负载,从而弥补单台机器负载生成能力不足的问题。

假设我们的测试计划会产生100个threads,我们使用6台机器进行分布式测试的时候,一共会产生100 * 6 = 600的负载。

 

约定

  • client: 大脑,控制其他执行机的机器

  • server: 真正执行test plan的机器

 

注意事项

  • 所有机器最好都在同一个局域网下
  • 所有机器运行相同版本的jmeter
  • 所有机器都使用同一个版本的java
  • jmeter版本最好 3.1
  • 调度机(master),其它机器做为执行机(slave)。

 

步骤:

1、调度机配置

添加执行机ip地址打开jmeter.properties(添加ip后重启jmeter)

 

打开jmeter-server.bat

 

关闭防火墙

 

2、执行机配置

打开jmeter-server.bat

 

关闭防火墙

 

 

3、调度机打开jmeter,执行分布式操作,选择远程启动可以启动一个执行机,选择全部启动,执行机和调度机全部启动

  • 远程启动一个执行机(可以看到产生一个HTTP请求)

 

 

 

  •  远程全部启动(可以看到产生两个HTTP请求)

 

 

拓展:non gui 模式下进行分布式操作

 

一般情况下我们都是在NonGUI模式下运行jmeter。这样做有两个好处

  • 节省系统资源,能够产生更大的负载
  • 可以通过命令行参数对测试场景进行更精细的配置

 

步骤:

 1、新建一个文件夹,存放jmeter脚本

 

 

 

 

 2、在当前窗口打开cmd窗口,运行命令

D:\jmeter3.1\apache-jmeter-3.1\bin\jmeter -n -r -t baidu.jmx  -l res.jtl -e -o ./report

 

参数详解

  • -n 表示使用non-gui模式
  • -t [JMX测试脚本的名称].
  • -l [保存JTL 测试结果文件的路径].
  • -j [JMeter log文件的路径].
  • -r 在JMeter的远程机器上运行测试,远程机器由 property " remote_hosts "指定
  • -R [远程机器列表] 在指定的远程机器上运行测试
  • -g [CSV 文件路径] 通过csv文件来创建dashboard报告
  • -e 运行结束后创建dashboard报告
  • -o 在哪个目录创建dashboard报告,该目录必须为空或者不存在

 

3、查看non gui 模式下分布式测试报告

 

 

软件测试汪简书地址
软件测试汪博客地址

欢迎关注微信公众号:软件测试汪。软件测试交流群:809111560

转载请注意出处,谢谢合作