JMeter详细使用教程及实际案例
@[toc]
前言
本篇博客主要是介绍JMeter并发测试工具的安装及实际使用。
所有博客文件目录索引:博客目录索引(持续更新)
学习资料
博文:
视频:
- Jmeter5.x压测接口实战-接口性能优化前后QPS对比
- jmeter压测实战-并发场景设计:实战场景,但是这里面用到的插件需要自行寻找。
- 全套性能测试|jmeter|TPS|Jmeter插件管理|压力测试
知识点整理
参数:最重要的是qps以及tps
- QPS:Query Per Second 每秒查询率。是一台查询服务器每秒能够处理的查询次数
- HPS:每秒点击数
- TPS:每秒交易数,每秒事物数。(一个完整的业务做完)
其他关注的指标:
- 最大响应时间:请求从发出到返回结果的最大时间。
- 发n次请求取最大。
- 最少响应时间:请求从发出到返回结果的最少时间。
- 90%响应时间:例如发送一万个请求,90%都1秒返回过来了,说明性能很好。
核心三个指标:吞吐量、响应时间、错误率
- 吞吐量大说明支持大并发。
- 响应时间短说明性能好
- 错误率指的是多个请求出现的比例。
一、安装JMeter
下载解压后,进入到bin目录下:
二、永久修改jmeter的配置
找到jmeter.properties配置文件:
直接在配置文件最底部加上如下内容:即可覆盖上面没有设置或者已经设置的内容
# 自定义新增覆盖上上面的
# 修改默认语言
language=zh_CN
# 修改字体格式与大小
jsyntaxtextarea.font.family=Hack
jsyntaxtextarea.font.size=25
# 修改模式、图片大小
jmeter.hidpi.mode=true
# ##:修改右侧参数比例:factor=1.2,指放大1.2倍
jmeter.hidpi.scale.factor=1.5
# ##:修改工具栏比例:可选:默认=22x22, 22x22,32x32;
jmeter.toolbar.icons.size=48x48
# # 修改左侧树结构比例
jmeter.tree.icons.size=32x32
接着打开jmeter后若是配置不生效:随意点击外观下的一个主题,就能够生效了
你也可以勾选日志查看,看对应调整的参数是哪个,从而来进行自定义配置。
三、快速上手
3.1、实战测试
学习教程:jmeter压测实战-并发场景设计
创建线程组与需求说明
创建线程组
首先肯定要添加一个线程组来进行测试,添加方式如下:
循环次数
一般为1,Ramp-Up
就是准备指定线程数的时间(若是你使用的线程数很大那么就需要设置n秒来进行一个提前准备与分配内存)。
需求说明
需求:测试一个接口http://127.0.0.1:8999/api/common/members
我们首先添加一个HTTP请求:
然后根据接口的url来进行填写:
接着依次添加对应的监听器,可以来看我们的请求结果:
添加好效果如下:
场景一:模拟2000个用户访问(非并发)
接着几个报告结果就都会有对应的一个测试结果。
**为什么说不是并发?**看下表格查看结果报告
可以看到这个过程是55-59秒,也就是说这样子测试是直接一个个线程串行执行的,而不是并发在固定时间内发送出去:
场景二:模拟2000个用户访问(并发)
清空上一轮的结果
依次将上一次的结果清楚继续下一次测试。
测试
1、设置Ramp-Up时间
目的:由于线程数之后增大,需要根据实际情况来设置这个准备时间秒数,这个秒数指的是在指定时间内来准备指定的线程数,你可以理解提前预备准备。
2、添加一个同步定时器
设置模拟用户组数量为2000,这样的话在这一组的2000个就会在同一时间内进行并发发送请求:
3、测试
准备好预备动作后,来进行启动:
右上角会有一个预备时间:
此时再来看下根据表格查看结果:你此时可以看到2000个请求几乎是在同一时间内发送出去的
结果查看
根据对应多个报告来查看结果:
3.2、各类报告
常用说明:
汇总报告
打开方式:
参数说明:
样本:总共请求数
平均值:平均响应时间
最小值:最小响应时间
最大值:最大响应时间
标准偏差:每个值与平均值的平均差度
异常:所有请求发送多少异常
吞吐量:很重要,根据它来衡量每个接口的并发能力
聚合报告
打开方式:
说明:
中位数:反映我们普遍的请求,哪个响应时间响应成功的。
四、Jmeter插件使用
性能监控:
- 性能测试工具: 用什么工具来做性能测试
- 性能测试场景设计: 用什么方法模拟我们性能测试需求
- 性能监控:监控我们性能测试过程,收集性能测试过程中数据,拥有性能分析----主要时收集被测服务器的资源使用情况被测服务器的资源:
- 硬件资源: cpu、内存、io、网络
- 软件资源: tomcat、jvm、数据库、连接池、中间件…
参考:Jmeter常用插件下载
jmeter插件下载地址:https://jmeter-plugins.org/wiki/Start/
客户端插件:JMeterPlugins-Standard、JMeterPlugins-Extras。
服务端插件:ServerAgent。
4.1、客户端插件使用
步骤1、进入插件官网进行下载JMeterPlugins-Standard、JMeterPlugins-Extras
步骤2、解压得到jar包添加到jmeter的ext目录中
解压后分别在ext目录中拿到JMeterPlugins-Extras.jar
、JMeterPlugins-Standard.jar
将这两个插件添加到对应jmeter安装目录下的lib/ext
中即可。
接着我们重启jmeter来添加器看看,若是有下面内容表示添加成功:
经常使用的有TPS…。
4.2、服务端监控
建议
建议:使用这个插件检测功能最好使用jmeter3.1版本,否则在执行测试时就会出现报错
- 4.5 Jmeter5.3监控Linux资源报错:Uncaught Exception java.lang.NoSuchMethodError: org.apache.jmeter.samplers.
- Jmeter 3.1版本之后暂时没有setFormatter函数功能
这里贴一个jmeter3.1版本:jmeter
如何找到这个网址?
使用方式
原理:在你目标监控的服务器端运行ServerAgent
程序,默认是4444端口,接着在客户端使用一个监听器jp@gc - PerfMon Metrics Collector
,添加一个指定监听地址记录即可之后请求时监听。
ServerAgent-2.2.1.zip
下载地址:ServerAgent-2.2.1。
解压之后得到该目录:
1、服务端启动监控
Windows
:双击ServerAgent.bat启动。
Linux
:运行指定端口,若是不指定默认就是4444端口。
- 对应命令:
./startAgent.sh --udp-port 0 --tcp-port 5689
2、客户端进行监控
添加一个监控器:
添加监控地址:
然后我们直接运行这个接口测试即可:
参考文章
[1] 基础教程:【测试基础】jmeter工具介绍及使用方法、jmeter工具使用介绍
[2] 插件:Jmeter常用插件下载
- 点赞
- 收藏
- 关注作者
评论(0)