Jemeter对HTTP接口压测(二)

这里简单的介绍下使用jmeter进行http接口的压测方法

1、创建线程组

添加一线程组(即用户组:一个线程模拟一个用户行为,如果要模拟多个用户,则通过设置多线程来实现)
在这里插入图片描述

2、创建HTTP请求

因为是对http接口进行压测,所以需要在线程组下添加HTTP请求
在这里插入图片描述

3、配置请求参数

主要设置服务器名称或IP,端口号,连接、响应时间,所采用的协议,请求类型,内容编码,路径,最后设置请求内容。
在这里插入图片描述
这里请求百度首页为例,修改请求名称。端口、路径、内容编码这里可以不用填写。
在http请求添加响应断言
在这里插入图片描述
这里仅做示例介绍,因此断言处仅仅检查响应码
在这里插入图片描述

4、结果检查

结果检查这里新增聚合报告和察看结果树。运行 *.jmx,如果保存jmeter保存失败,则需要切换主题即可
在这里插入图片描述
创建查看结果数和聚合报告监听器。
在这里插入图片描述
如果这里监听器不满足要求,可以安装监听器插件
下载客户端插件:JMeterPlugins-StandardJMeterPlugins-Extras

下载服务端插件:ServerAgent
将jmeter-Standard、jmeter-Extras中lib—>ext—>JMeterPlugins-Standard.jar、JMeterPlugins-Extras.jar:将这两个文件复制到Jmeter文件下—lib—ext文件中
在这里插入图片描述
将ServerAgent-X放在Jmeter目录下

配置可参考:监听器插件
重新打开Jemeter
在这里插入图片描述

常用组件介绍

  1. jp@gc - Bytes Throughput Over Time:不同时间吞吐量展示(图表)聚合报告里,Throughput是按请求个数来展示的,比如说5/sec,就是每s发送5个请求;而这里的展示是按字节Bytes来展示的图表
  2. jp@gc - Hits per Second:每秒点击量
  3. jp@gc - PerfMon Metrics Collector:服务器性能监测控件,包括CPU,Memory,Network,I/O等等
  4. jp@gc - Reponse Latencies Over Time:记录客户端发送请求完成后,服务器端返回请求之前这段时间
  5. jp@gc - Reponse Times Distribution:显示测试的响应时间分布, X轴显示由时间间隔分组的响应时间, Y轴包含每个区间的样本数
  6. jp@gc - Transactions per Second: 每秒事务数,服务器每秒处理的事务数
  7. jp@gc - Active Threads Over Time:随时间活动的线程数

运行压测脚本
在这里插入图片描述

有了上面的这些操作之后,这里来解释一下这些概念:

  1. TestPlan:测试计划,相当于一个工程,需要测试什么,怎么测就是定义在一个测试计划中
  2. Thread Group:线程组,相当于模拟的请求数。一个线程相当于一个用户请求
  3. 察看结果树:监听发送请求时各个请求的状态
  4. 聚合报告:把一次测试的数据汇总

5、并发请求

上面的请求是单个用户发起的接口请求,类似Postman一样的接口自动化,这里着重介绍一下线程组。因为一个线程相当于是一个用户请求
。针对线程组的线程属性
在这里插入图片描述
上图中的参数表示:5s内发起10个请求,共循环2次,这里通过不同的监听器查看一下实际效果

5.1 jp@gc - Active Threads Over Time

每秒活动线程变化,用于展示展示Jmeter阶梯式加压测试,可以使用插件
在这里插入图片描述

5.2 jp@gc - Response Times Over Time

每秒响应时间变化
在这里插入图片描述

5.3 jp@gc - Transactions per Second

每秒事务处理率(TPS)
在这里插入图片描述

5.4 汇总图

结合以上3个监听器我们可以看出,随着活动线程数的不断增加,响应时间越来越高,但TPS保持稳定没有太大变化
在这里插入图片描述

5.5 聚合报告

在这里插入图片描述
解释一下这份报告:

解释一下这份报告:

样本:请求的次数,计算公式是线程数*循环次数,如果线程组配置勾选了永远,那么就是你停止测试时实际发送的请求数
平均值:响应时间的平均用时,单位是毫秒。比如这里的平均响应时间是38毫秒
中位数:响应时间的中位数,单位是毫秒。
90%百分位:90%的响应时间小于该数值,单位是毫秒。这里有90%的响应时间小于22毫秒
95%百分位:含义和90%类似
99%百分位:含义和90%类似
最小值:本轮测试最小响应时间,单位是毫秒。
最大值:本轮测试最大响应时间,单位是毫秒。
异常%:本轮测试出现异常的请求比例。
吞吐量:可以理解为QPS,即是我们测试的接口处理请求的能力。比如这里是平均每秒可以处理2.2次请求
接收KB/Sec:响应数据的接收速率
发送KB/Sec:请求数据的发送速率

接着修改线程组中的请求参数,将线程数修改为5000,同时点击界面的“扫帚”标识
在这里插入图片描述

参考:https://blog.csdn.net/tomoya_chen/article/details/82901291

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值