Jmeter多机器联合负载步骤:

1.控制机和负载机器的配置:

控制机和负载机器都是需要打开防火墙

控制机的IP地址设置100个,172.160.0.2~172.160.0.100 在加上172.160.0.211

负载机的IP地址设置100个,172.160.0.101~172.160.0.200 在加上172.160.0.211

控制机和负载机必须要在同网段的IP,并且网络可以连通

控制机配置:

打开jmeter.properties,搜索remote_hosts,加上远程负载机的IP:1099,重启jmeter才能生效

控制机要执行测试的话,需要打开jmeter-server.bat

批量删除控制的IP:  for /L %%i in (101,1,200) do netsh interface ip delete address "以太网" 172.31.0.%%i

每个机器有100IP,而且不能冲突

账户和密码的文件必须分开,每份100个,不重复,分别复制到控制和负载机

负载机的配置:

安装JDK,实际安装jre足以支持测试,但是控制机一定要安装JDK

端口号必须要是1099,与控制机匹配

执行测试需要打开jmeter-server.bat

参数化文件,每个负载机必须要有一份,但是数据不同(,比如IP,用户名、密码),

最好都放在jmeter的bin路径下,使用相对路径

脚本中的参数文件位置要设置正确

每个负载机均衡负担设置的线程数:

比如200个线程,总共台机器,那么每个机器的现在为100

批量增加控制的IP:  for /L %%i in (101,1,200) do netsh interface ip add address "以太网" 172.31.0.%%i  255.255.0.0

在以下这一行前 加 ram表示注释这一行

for /L %%i in (101,1,200) do netsh interface ip aa address "以太网" 172.31.0.%%i

删除一个IP:netsh interface ip delete address "以太网" 172.31.0.211

控制机和负载机配置完成后,需要重新再jmeter中修改脚本和参数文件的位置,确保没问题

多机联合负载运行测试

1.jmeter中的运行》远程启动中可以选择负载机的IP

2.或者 在运行》远程启动所有,就可以启动所有的机器,包括控制机和负载机

3.测试之前一定要打开所有机器的jmeter-server.bat

 

场景监控

线程组右键添加监听器》图形结果

线程组右键添加监听器》聚合报告

线程组右键添加监听器》用表格查看结果

 

 

 

 

 

监控硬件资源:

解压Severagent到被监控的计算机中

Windows服务器运行 startAgent.bat文件监控,必须先打开这个,才能监控资源

解压 ServerAgent-2.2.1.zip 到被监控计算机中

解压 ServerAgent-2.2.1.zip 到被监控计算机中

解压 ServerAgent-2.2.1.zip 到被监控计算机中

Linux 服务器运行startAgent.bat文件才可以监控

将JmeterPlugin.jar包复制到jmeter的安卓目录下\lib\ext下

重新启动jmeter

右键添加监听器》选择监听器jp@gc-PerfMon Metrics Collector

单机Add Row,添加服务器的ip,选择要监控的CPI,内存,硬盘,网络等资源

jp@gc-PerfMon Metrics Collector

Perf代表erforcemance,性能

Mon代表monitor,监控

Metrics 是指标

Collector 采集器

安装性能监控插件(jmeter-plugins)后报如下错误,由于jmeter版本过高3.3,jmeter3.1可以成功

 

取样器和聚合报告结果分析

取样器结果的参数解释:

Thread Name 线程组名称

Sample Start启动开始时间

Load time 加载时长

Connect time 连接时长

Latency等待时长

Size in bytes发送的数据总大小

Headers size in bytes 发送数据的头部部分大小

Body size in bytes 发送数据的正文部分大小

Sample Count发送统计

error count 错误统计

Response code 状态码

Response message响应信息

Response Headers响应的头部信息i

聚合报告

Label 请求的步骤

#sample 一共发送的请求数量

Average 平均响应时间,默认情况下是的那个request的平均响应时间

Median 中间值,有一半的服务器响应时间低于该值么人另一半高于该值

90%line  90%请求的响应时间

Min 服务器响应的最短时间

Max服务器响应的最长时间

Error%

测试出现的错误请求数量百分比

确认是否允许错误的发生或者错误率允许在多大的范围内

若出现错误就要看服务端的日志,配合开发查找定位原因

Throught 简称TPS,吞吐量

默认情况下每秒出路的请求数,也就是指服务器的处理能力,tps越大,说明服务器处理能力越好

吞吐量默认以request/second的来衡量,即每秒错少个请求

KB/sec 以KB/sec来衡量吞吐量

用表格查看结果分析

Sample# 每个请求的序号

Start Time 每个请求开始时间

Thread Name   每个线程的名称(代表一个虚拟用户)

Label  Http 请求名称

Sample Time  每个请求所花时间,单位毫秒

Status 请求状态,如果为勾则表示成功,如果为叉表示失败。

Bytes 请求的字节数

Latency 等待时长

Connect time  连接时长

样本数目 也就是请求个数,成功的情况下等于你设定的并发数目乘以循环次数

最新样本   表示服务器响应最后一个请求的时间

平均   每个线程请求的平均时间

偏离  服务器响应时间变化、离散程度测量值的大小

非GUi运行测试

1.修正脚本和设置

安装性能监控插件(jmeter-plugins)后报如下错误,由于jmeter版本过高3.3,jmeter3.1可以成功

jmeter/bin/jmeter.log存放jmeter的日志

 

 解决察看结果树中的汉字乱码问题

修改 jmeter-properties 文件sampleresult.default.encoding=utf-8

日志中显示参数和断言信息

修改 jmeter-properties 文件  log_level.jmeter=DEBUG

日志中的部分文本含义  .ResponseAssertion

断言 FileServer: Read

读文件

ü 运行负载测试时不显示

ü 在调试的时候可以调整日志级别来看输出,但是正常情况下要将日志的级别调

高(INFO),减少日志输出,以提高 jmeter 本身性能

设置资源图并保存位置_非GUI运行测试_导出测试结果

文件名手动写入图形保存的位置,不能点击浏览按钮

文件名一般保存为  jtl 格式

进入jmeter bin的路径,输入以下命令

jmeter -n -t jmx 脚本文件名 -r -l 结果文件名.jtl

jmeter -n -t case/Webtours.jmx -l case/result.jtl

把jtl文件生成报告

jmeter -g case/result.jtl -o case/test

“-r”指开启远程负载机

"-n" 指非GUI方式运行

“-t"指定运行的测试脚本地址与名称,可以使用相对路径

若使用“-r"必须要事先启动jmeter-server.bat

若不使用“-r"表示不适用负载机 jmeter -n -t jmx 脚本文件名 -l 结果文件名.jtl

远程机列表在jmeter.properties中指定remote_host

若要监控硬件资源,需要先打开Server-Agent中的startAgent.bat

Windows查看端口号:

netstat -ano|findstr "4444"

将 ServerAgent-2.2.1 放到要监控的服务器中待使用。

把jtl文件生成报告报错

jmeter -g case/result.jtl -o case/test

执行命令路径没错,最后百度找到原因是jmeter.properties文件配置中支持xml,

这里需要用的是csv格式就可以了,打开文件Ctrl+F“”'jmeter.save.saveservice.output_format“”如图所示

 

jmeter -g case/result.jtl -o case/test

生成的测试报告是一个test的文件夹,里面包含很多文件

如果需要移动,那么整个文件夹都需要一起copy,不能改动相对位置

 

执行脚本并生成报告

jmeter -n -t Login_All_Tab_Check.jmx -l 20200911_Login_All_Tab_Check_50_10min_01.jtl -e -o report/20200911_Login_All_Tab_Check_50_10min_01 -j 20200911_Login_All_Tab_Check_50_10min_01.log

使用批处理命令执行,制作run.bat 文件。直接双击运行即可
@echo off
at 17:30 start
md D:\test\jtl\
md D:\test\report
md D:\test\log\
jmeter -n -t Login_All_Tab_Check.jmx -l D:\test\jtl\20200911_Login_All_Tab_Check_50_10min_01.jtl -e -o D:\test\report\20200911_Login_All_Tab_Check_50_10min_01 -j D:\test\log\20200911_Login_All_Tab_Check_50_10min_01.log
pause

50解决导出结果汉字乱码问题 ·

需要替换ApacheJMeter_core.jar 包

 

 

硬件资源图

非 GUI 运行结束正常导出结果,不用导出 PerfMon Metrics Collector

运行结束后打开 PerfMon Metrics Collector 视图,“浏览”数据文件test.jtl(先前保存的文件),再将图存为图片

 

 

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值