压测利器----Jmeter的使用,快速入门了解一下

简介: 您好,我是码农飞哥,感谢您阅读本文。

您好,我是码农飞哥,感谢您阅读本文。

前言

我是码农飞哥,感谢您的阅读。众所周知,Jmeter是一款用来压测接口的利器。其组件比较多,可以应对各种场景下的压测需求。下面就让我们来认识一下这款利器。

核心组件介绍

组件名称 组件作用 组件添加方式
线程组 所有的测试计划都是以线程组为单位
HTTP请求 用于设置请求的接口地址和入参
HTTP信息头管理器 用于HTTP请求接口设置请求头
察看结果树 察看结果树会打印每一个请求的情况
聚合报告 聚合报告展示了所有的请求数,以及所有请求平均响应时间,以及90%的请求的响应时间
固定定时器 用于设置每个线程请求的时间间隔

线程组

所有的线程设置都是在线程组,可以把线程组想象成线程池。

名称:就是线程组的个性化名字

线程组里几个比较重要的属性:

1.线程数:就是设置多少个线程执行测试,这里的线程可以想象成虚拟用户

2.Ramp-up Period (in Seconds):准备时长,就是说多久内启动完所有线程,默认是0,在上图中的意思是,同一时刻启动5个线程。如果设置为5的话,就是说要在5秒内启动5个线程,每秒启动一个。

3.循环次数: 永远的话,就是在调度器持续时间内不断的循环调用接口,此处设置的是3次,表示每个线程循环执行3次。

调度器配置:

4.持续时间(秒):表示压测持续的时间

5.启动延迟(秒):表示延迟多久启动测试

Http请求

Http请求的基础设置如上图所示:

1.协议:可以设置为http或者https

2.服务器名称或IP: 如果是域名的话直接设置域名,否则设置ip地址。

3.端口号:IP访问的才需要。

HTTP请求:

4.方法:这里主要是GET和POST两种请求方法

5.路径:就是接口的地址

下面的框中就是设置请求参数

6.如果是表单提交的话,则在Parameters中设置参数

7.如果content-type是application/json类型的话,则在Body Data中设置请求参数

8.如果是multipart/form-data类型的话,则需要在Files upload中设置参数。

HTTP信息头管理器

这里顾名思义就是设置HTTP请求头信息。可以设置 content-type等信息。

察看结果树

察看结果树也是一个很重要的组件,这个组件主要展示了所有的HTTP请求,当然我们可以勾选仅日志错误则只会展示所有错误的HTTP请求。勾选Successes则只会展示所有成功的请求。也可以把请求的结果持久化到一个文件中。

聚合报告

聚合报告是非常非常重要的一个组件,通过这个组件我们可以整体的知道压测的结果,那个列表中有哼多行,每一行的属性我都会逐一做一个说明:

1.Samples: 总的请求数,这里一共有15个请求,5个线程循环3次。

2.Average: 平均响应时间,这个指标统计了都有请求的平均响应时间。

3.Median: 中位数的响应时间,这个指标统计了中位数的响应时间。

4. 90% Line: 90%的请求的平均响应时间,这是一个很重要的衡量接口性能的指标

4.99% Line: 99%的请求的平均响应时间,这个指标跟Average指标相近

5.Min: 最快的响应时间,就是响应最快的请求所用时。

6.Max: 最慢的响应时间,就是响应最慢的请求所用时。

7. Error %:错误请求的占比

7.Throughput: 接口的吞吐量

8.Recevied KB/sec: 每秒钟的接受数据量

9.Sent KB/sec: 每秒钟的发送数据量

固定定时器

这个定时器主要是用于设置,每个线程每次循环的时间间隔,这里的5000毫秒表示每个线程请求完之后要等5秒才会再次请求接口。

总结

本文对Jmeter的使用做了一个简单的总结,中间介绍了一下压测一个HTTP接口所需要用到的常用组件。熟练运用这几个组件就可以比较轻松的应对压测需求。压测设置的顺序 设置线程组—>设置HTTP请求—>设置HTTP请求头---->设置聚合报告—>设置察看结果树。

相关实践学习
通过性能测试PTS对云服务器ECS进行规格选择与性能压测
本文为您介绍如何利用性能测试PTS对云服务器ECS进行规格选择与性能压测。
相关文章
|
26天前
|
Ubuntu Java 测试技术
【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测
【Linux】一站式教会:Ubuntu(无UI界面)使用apache-jmeter进行压测
|
21天前
|
消息中间件 Java 测试技术
性能工具之Jmeter扩展函数及压测ActiveMQ实践
【5月更文挑战第18天】性能工具之Jmeter扩展函数及压测ActiveMQ实践
48 5
|
26天前
|
测试技术 UED
PTS压测问题之资源准备好慢如何解决
PTS(Performance Testing Service)是一项面向网站、应用等提供的压力测试服务,用于模拟不同场景下的用户访问,评估系统的性能表现;在进行PTS压测时,可能会出现一些异常或报错,本合集将PTS压测中频繁出现的问题及其解决办法进行汇编,旨在帮助用户更有效地进行性能测试和问题定位。
255 1
|
14天前
|
监控 数据可视化 测试技术
性能工具之JMeter+InfluxDB+Grafana打造压测可视化实时监控
【5月更文挑战第23天】性能工具之JMeter+InfluxDB+Grafana打造压测可视化实时监控
45 6
性能工具之JMeter+InfluxDB+Grafana打造压测可视化实时监控
|
17天前
|
JSON JavaScript Java
性能工具之Jmeter压测Thrift RPC服务
【5月更文挑战第21天】性能工具之Jmeter压测Thrift RPC服务
30 1
|
19天前
|
网络协议 JavaScript 前端开发
性能工具之Jmeter压测Hprose RPC服务
【5月更文挑战第19天】性能工具之Jmeter压测Hprose RPC服务
33 5
|
26天前
|
Web App开发 Java 测试技术
秒懂HTTPS接口(JMeter压测篇)
【5月更文挑战第11天】秒懂HTTPS接口(JMeter压测篇)
28 2
秒懂HTTPS接口(JMeter压测篇)
|
26天前
|
JSON Java Linux
性能工具之 JMeter 快速入门
【5月更文挑战第10天】性能工具之 JMeter 快速入门
25 5
性能工具之 JMeter 快速入门
|
26天前
|
数据可视化 Java 测试技术
JMeter 如何实现 Elasticsearch 8.X 性能测试?
JMeter 如何实现 Elasticsearch 8.X 性能测试?
25 0
|
7月前
|
Java 测试技术 Apache
用JMeter做接口压力测试
JMeter是Apache组织开发的基于Java的压力测试工具,它是用 Java 语言编写的
71 0