JMeter压测工具安装和简单使用
创始人
2025-05-29 04:15:34
0

一、JMeter简介

1、简介

Apache JMeter 是 Apache 组织基于 Java 开发的压力测试工具,用于对软件做压力测试。

JMeter 最初被设计用于 Web 应用测试,但后来扩展到了其他测试领域,可用于测试静态和动态资源,如静态文件、Java 小服务程序、CGI 脚本、Java 对象、数据库和 FTP 服务器等等。JMeter 可对服务器、网络或对象模拟巨大的负载,在不同压力类别下测试它们的强度和分析整体性能。
另外,JMeter 能够对应用程序做功能/回归测试,通过创建带有断言的脚本来验证程序是否返回了期望结果。为了最大限度的灵活性,JMeter 允许使用正则表达式创建断言。

JMeter的作用:

  1. 能够对HTTP和FTP服务器进行压力和性能测试, 也可以对任何数据库进行同样的测试(通过JDBC)。
  2. 完全的可移植性和100% 纯java。
  3. 完全 Swing 和轻量组件支持(预编译的JAR使用 javax.swing.*)包。
  4. 完全多线程 框架允许通过多个线程并发取样和 通过单独的线程组对不同的功能同时取样。
  5. 精心的GUI设计允许快速操作和更精确的计时。
  6. 缓存和离线分析/回放测试结果。

2、下载及安装:

由于 Jmeter是基于 Java开发,首先需要下载安装 JDK,自行安装 JDK。下面我们下载安装 Jmeter。

Jmeter官网下载:https://jmeter.apache.org/download_jmeter.cgi

在这里插入图片描述
下载解压之后,无需安装。点击 bin/jmeter.bat即可

在这里插入图片描述
即打开 Jmeter工具面板,然后就可以使用了。

在这里插入图片描述

3、中文环境

我们可以通过修改配置文件来设置 JMeter中文环境,进⼊ bin目录,找到“jmeter.properties”文件。

添加“language=zh_CN”即可。

在这里插入图片描述

保存之后再打开 JMeter就永久变为中文环境了。

在这里插入图片描述

4、JMeter元件简介

主要元件:

  1. 测试计划:是使用 JMeter 进行测试的起点,它是其它 JMeter测试元件的容器
  2. 线程组:代表⼀定数量的用户,它可以⽤来模拟用户并发发送请求。实际的请求内容在Sampler中定义,它被线程组包含。
  3. 配置元件:维护Sampler需要的配置信息,并根据实际的需要修改请求的内容。
  4. 前置处理器:负责在请求之前工作,常⽤来修改请求的设置
  5. 定时器:负责定义请求之间的延迟间隔。
  6. 取样器(Sampler):是性能测试中向服务器发送请求,记录响应信息、响应时间的最小单元,如:HTTP Request Sampler、FTP Request Sample、TCP Request Sample、JDBC Request Sampler等,每⼀种不同类型的sampler 可以根据设置的参数向服务器发出不同类型的请求。
  7. 后置处理器:负责在请求之后工作,常用获取返回的值。
  8. 断⾔:用来判断请求响应的结果是否如用户所期望的。
  9. 监听器:负责收集测试结果,同时确定结果显示的方式。
  10. 逻辑控制器:可以自定义JMeter发送请求的行为逻辑,它与Sampler结合使⽤可以模拟复杂的请求序列。元件的作用域和执行顺序。

5、测试计划

测试计划一般所需要的下面元件:

  1. 线程组:压测高并发下系统的表现,jmeter提供线程组的工具,能够在jmeter内部启动多个并发的线程,并发的去发送一些接口的请求,用来测试服务端的压力。
  2. HTTP请求: 线程组要做的事情就是在这个场景下发送 http 请求(Cookie管理器,Http请求默认值等)。
  3. 监听器(查看结果树、图形结果、聚合报告等)
    • 查看结果树:等到有对应的 http 请求发送出去之后,需要查看对应http的返回结果(正常的|异常的)。异常的话就有可能是容量不够所产生的拒绝连接等等这种样子的瓶颈。
    • 聚合报告:生成性能压测报告,内部含有TPS,QPS等性能评测的指标来表现对应接口的响应情况等。

也可以根据实际测试需求添加更多元件。

二、JMeter简单使用

根据 测试计划的了解。下面开始 JMeter的使用。

1、添加线程组

元件描述:⼀个线程组可以看做⼀个虚拟用户组,线程组中的每个线程都可以理解为⼀个虚拟用户。

添加方法:右键点击Test Plan->添加->线程(用户)->线程组。

在这里插入图片描述

设置 Jmeter发送请求的线程属性。

在这里插入图片描述

线程属性:

  • 线程数:即虚拟用户数。设置多少个线程数也就是设置多少虚拟用户数
  • Ramp-Up时间(秒):设置虚拟用户数全部启动的时长。
    如果线程数为20,准备时长为10秒,那么需要10秒钟启动20个线程。也就是平均每秒启动2个线程。
  • 循环次数:每个线程发送请求的个数。
    如果线程数为20,循环次数为10,那么每个线程发送10次请求。总请求数为20*10=200。如果勾选了“永远”, 那么所有线程会⼀直发送请求,直到⼿动点击⼯具栏上的停止按钮,或者设置的线程时间结束。

上图解释:会在10秒钟之内启动起来20个线程,并且让这20个线程每个线程都循环调用接口1次。

2、添加 HTTP请求

元件描述:HTTP请求包括接口请求方法、请求路径和请求参数等。

添加方法:右键线程组->添加->Sampler->HTTP请求。

在这里插入图片描述

用来做真正做压测一个接口。根据你的接口填写相关信息。

http请求对应的协议默认就是 http。

在这里插入图片描述

3、添加查看结果树

监听器元件描述:树状形式显示接口的访问结果,包括请求结果、请求内容、服务器的响应内容。

添加方法:线程组 ->右键添加 ->监听器 ->查看结果树。

在这里插入图片描述

查看结果树、查看结果集的功能,查看成功多少,失败多少,并且有一个返回值。

结果树当中会把对应的一个http接口返回的response都打印出来,可以选仅显示错误日志,仅显示成功日志。

在这里插入图片描述

4、聚合报告

添加方法:线程组 ->右键添加 ->监听器 -> 聚合报告。

有接口响应的平均值,中位数值,90线,95线,99线,最大最小值,Error,TPS,received sent的数据包大小。

在这里插入图片描述

5、保存,然后运行

在这里插入图片描述

到此,使用 JMete对软件做压力测试就算入门了。关于 JMeter中各个元件的介绍可查看参考文章。

参考文章:

  • Jmeter中文网:http://www.jmeter.com.cn/jieshao
  • 一看就懂的JMeter操作流程(各个元件简介):https://mp.weixin.qq.com/s?__biz=MzI3NDc4NTQ0Nw==&mid=2247520878&idx=1&sn=dfe8a1941d3accefa07e483597c1a014&chksm=eb0c67a6dc7beeb0e330a198cca58872a03d7c0c9cb9a3dddfc6d75f4f13189eecf0fb91c91a&scene=27

– 求知若饥,虚心若愚。

相关内容

热门资讯

证监会再次修订《上市公司治理准... 7月25日晚上,证监会发布通知对《上市公司治理准则(修订征求意见稿)》公开征求意见。本次修订目的是为...
从“闭眼买”到“不敢信”,山姆... 蓝鲨导读:中国零售崛起 作者 | 张二河 编辑 | 卢旭成 山姆会员店,因上架了一款韩国品牌陷入舆论...
原创 欧... 近日,欧盟委员会突然宣布了一则令人震惊的消息:7月25日,该委员会正式对中国太阳能玻璃发起第二次双反...
7月28日财经早餐:欧美达成贸... 来源:市场资讯 汇通财经APP讯——周一(北京时间7月28日),现货黄金交投于3335.78美元/盎...
科技早报 | 贝索斯完成大规模... 贝索斯完成一轮大规模亚马逊股票出售,套现57亿美元 亚马逊公司当地时间7月25日提交至美国证券交易...
股市必读:紫光股份(00093... 截至2025年7月25日收盘,紫光股份(000938)报收于25.04元,上涨0.64%,换手率1....
15%!美国与欧盟达成贸易协议... 据央视新闻报道,当地时间7月27日,美国总统特朗普表示,美国已与欧盟达成贸易协议,对欧盟输美商品征收...
早新闻|央行4000亿元MLF... 宏观热点 央行、农业农村部印发《关于加强金融服务农村改革 推进乡村全面振兴的意见》 近日,中国人...
21专访|细胞存储,《繁花》爷... 21世纪经济报道记者 赵云帆 上海报道 “我是一个真正意义上的创业者”,年过古稀的瞿建国,在采访中如...
华熙生物赵燕谈胶原蛋白乱象:科... 21世纪经济报道记者雷晨 北京报道 近年来,重组胶原蛋白成为医美和护肤领域的热门概念,市场宣传中不乏...
富春染织完成董事会选举换届 开... 7月25日晚间,富春染织公告显示,当日,公司2025年第一次临时股东会和富春染织第四届第一次董事会在...
圣湘生物:两款产品取得医疗器械... 每经AI快讯,圣湘生物(SH 688289,收盘价:22.94元)7月27日晚间发布公告称,圣湘生物...
10年期国债收益率升至1.73... 近期债券市场出现显著调整,多重因素交织推动收益率持续上行。权益市场强势表现与大宗商品价格上涨形成合力...
当对手都在做下沉 蜜雪冰城旗下... [ 今年5月,蜜雪集团跟巴西签署40亿元人民币的采购意向大单,其中大多数是咖啡豆。 ] 当星巴克、瑞...
新手必看!股指期货交易规则基础... 股指期货交易规则,看似复杂抽象,实则与我们的日常生活有着奇妙的共通之处。它就像一场精心编排的生活交响...
王登发履新茅台技开公司“一把手... 一则微信公众号发布的信息,披露了茅台集团旗下的技术开发公司“一把手”已换人。 近日,南都湾财社-酒水...
特斯拉机器人V3量产版亮相!马... 快科技7月27日消息,特斯拉的Optimus人形机器人V3量产版终于要来了!马斯克在最近的财报电话会...
原创 中... 在金融全球化的浪潮中,中国资本市场始终勇立潮头,不断探索前行。7月26日,中国资本市场学会成立大会暨...
报告:我国经济增长保持韧性 下... 央广网北京7月27日消息(记者 樊瑞)近日,中国金融四十人论坛(CF40论坛)发布《2025年第二季...
超6300亿元!A股银行“分红... 7月25日,成都银行完成权益分派股权登记,将于7月28日发放现金红利,这标志着A股上市银行2024年...