JMeter 快速入门体验,小白也能看得懂!

最近在推进信创转 arm, 遇到的问题是有几个服务在 x86 架构下运行良好,但是在 arm 机器上总是出现问题,为了验证问题,准备使用压测工具做一下压力测试,JMeter 免费开源又好用,趁此机会学习实践一下吧。

JMeter 是开源软件 Apache 基金会下的一个性能测试工具,用于测试部署在服务器端的应用程序的性能。本文旨在帮助想了解性能测试和 JMeter 的初学者。本文将介绍 JMeter 的安装和运行方法,以及如何开始最简单的测试。

下载安装

直接在官网下载最新版即可,JMeter 是免安装版的,下载解压后可以直接使用(前提是你电脑上已经安装过 JDK 8 以上的环境,安装这块应该问题不大,大家自行解决):

https://jmeter.apache.org/download_jmeter.cgi

如需历史版本可以移步:

https://archive.apache.org/dist/jmeter/

我这里使用最新版的 5.6.3

下载解压后,目录结构如下:

目录说明:

  • backups: 默认是没有的,当你运行了测试任务时就会自动将测试脚本(.jmx 文件)备份到这里

  • bin: 可执行脚本和一些模版示例

  • docs: Java doc 文档

  • extras: 提供了对构建工具 Ant 的支持,可以使用Ant来实现测试自动化,例如批量脚本执行,产生HTML格式的报表

  • lib: 该目录包含两个子目录,其中ext子目录存放 JMeter 的核心 jar 包,另一个junit子目录存放JUnit测试脚本

  • licenses: 相关 licenses

  • printable_docs: 该目录存放的是 jmeter 官方提供的帮助文档,可以离线查看

启动 JMeter

在 bin 目录下,Windows 用户运行 jmeter.bat 文件即可启动, JMeter,Unix / MacOS 用户则需要运行 jmeter.sh

启动之后会打开一个 GUI 软件( CMD 窗口也不要关,隐藏即可)

默认字体比较小,可以 Options -> Zoom In 进行放大

也支持简体中文,根据自己的喜好来设置即可,Options -> Choose Language -> Simple

图形化界面,大家可以自己熟悉一下就可以了,接下来,我们来创建一个测试计划

创建测试计划

所谓测试计划,就是要执行的测试任务的合集,对应一个 .jmx 文件,完整的测试计划包含一个或者多个线程组,逻辑控制器,取样发生控制,监听器,定时器,断言和配置元件等组成。

添加线程组

如上图中的 Test Plan, 我们来添加一个线程组:选中 Test Plan - 右键 - Add - Threads(Users) - Thread Group.

JMeter 是由 Java 实现的,使用一个 Java 线程来模拟一个用户,因此线程组(Thread Group)就是指一组用户的意思。

操作完之后就会打开 线程组页面,可以配置线程组相关的内容,如下图

① 名称,起一个名称
② 出错如何处理,这里选择了 continue 继续
③ 总共有多少线程(用户),一个线程代表一个用户
④ 多长时间把 ③ 中设置的线程数拉起来,上面的设置就表示 1 秒时间将 100 个用户拉起来,以用户打卡为例,总共100个用户,大家都在 5 秒内打卡完成,大家有的在第 1 秒打,有的在第 3 秒打,这个设置就是模拟真实生活场景的,用户也不是完全同时的
⑤ 每个用户循环几次,上面的设置就表示 100 个用户,每人做 10 次,总共发出 10 * 1000 = 10000 次请求

添加测试任务

有了线程组,下面要给这批用户(线程)分配活了,同样,在 线程组 上右键进行相关操作,这里配置最简单的 HTTP 请求

配置页面也比较容易理解,跟使用 PostMan 之类的差不多,大家看页面应该就知道怎么填了,比如我这里简单测试接口 http://localhost:8080/hello?name=jack 。

保存并执行

保存并执行测试计划

点击 三角 执行测试计划,点击 Options - Log Viewer 可以打印日志信息

添加监听器

上面已经可以正常压测了,但是看不到输出的结果,我们可以添加一些监听器进行查看结果,比如 查看结果树 和 聚合报告 这两个。

查看结果树可以查看到每次请求的响应情况

聚合报告用来查看测试计划所执行的情况,比如延迟,吞吐量之类的

先简单知道些入门的东西,后续再探究更加高阶的内容。

命令行执行

在 windows 上可以运行 GUI 界面,但是在 linux 服务器上一般执行 命令行 命令较多,当然,在 windows 上也可以执行 命令行 指令,我们来简单使用一下。

在 bin 目录下有可执行的脚本,在 bin 目录下,windows 系统按住 shift 右键 在此处打开 PowerShell 窗口,可以使用 .\jmeter -v 查看当前版本

使用 .\jmeter -h 查看帮助提示

还记得我们在上面演示的测试计划保存到了下面的目录,我们就用这个为例进行执行

提前再创建一个 E:\App\apache-jmeter-5.6.3\tmp_result 空目录(一定是一个空目录哟)用来存放输出的结果,直接看下面的示例,关键点是: -t 后面指定测试计划脚本,-l 输出csv 结果,-o 输出html结果

 .\jmeter -n -t 'E:\App\apache-jmeter-5.6.3\tmp_tests\Test Plan.jmx' -l E:\App\apache-jmeter-5.6.3\tmp_tests\Test.csv -e -o E:\App\apache-jmeter-5.6.3\tmp_result

执行界面输出结果

Test.csv 文件内容,每个请求的情况

tmp_result 输出结果

双击 index.html 查看

总结

时间关系,先分享到这里,也算带大家入门了 JMeter 的最基本使用吧,后面再继续探索更多实操,届时再做分享,当然你也可以继续搜索更加进阶的内容,带有目的性的去学习更加深入的内容。

我后续会继续在 linux 服务器上进行实践,包括启用多机器联机模式进行加大压力真正实践生产级压测需求,大家感兴趣的话可以关注一下,期待下次分享。

如有任何问题,欢迎关注公&号:新质程序猿,找到我,有问必答,一起成长。

  • 17
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
课程从基础讲起,全课程以实战为主,每个知识点通过实际案例演练讲解理论+实践结合,更容易理解,适合小白,低门槛,快速上手。 课程同时涵盖web端和移动端app测试,同时还加入了抓包工具的使用; 1) 第一阶段为JMETER 5.4.1 (最新版本)工具使用篇,通过Jmeter 介绍和安装、http 取样器、JDBC 取样器、JMETER 组件详细讲解、配置元件、三种参数化方式教你玩转JMETER 参数化、工作过程中间所需的常用函数、聚合报告、察看结果树、汇总报告等监听器知识,后置处理器、后置处理器之正则表达式提取器提取响应内容实践、读取本地JSON格式文件实例、正则表达式操作符、正则表达式工具之Regextester,系统全面学习正则表达式,突破JMETER 知识难点,响应断言、JMETER分布式、分布式原理、搭建JMETER 分布式、WebService协议接口测试。 每一个知识点采用理论加案例的方式,吃透每一个知识点,为性能测试实践奠定基础。 2) 第二阶段为性能测试实践篇1、通过JMETER 实践爬虫技术,爬取第三方平台全网页地址、批量爬取国外网站壁纸10W+图片并保存到本地;2、详细介绍Fiddler 抓包工具,Fiddler 抓包工具原理、Fiddler 抓取PC 端和移动端包信息、JMETER+Fiddler 结合使用对PC 端项目进行性能测试项目实践,提升PC 端性能测试能力;3、JMETER+Fiddler  结合使用对app 项目进行性能测试项目实践,提升app项目性能测试能力4、性能测试常见的业务指标和技术指标、响应时间、TPS、HPS等知识进行讲解5、通过JMETER 对移动端项目进行性能测试实战; 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值