Apache JMeter 压力测试使用说明

文章目录

    • [一、 安装步骤](#一、 安装步骤)
      • [步骤一 下载相关的包](#步骤一 下载相关的包)
      • [步骤二 安装 Jmeter](#步骤二 安装 Jmeter)
      • [步骤三 设置 Jmeter 工具语言类型为中文](#步骤三 设置 Jmeter 工具语言类型为中文)
    • 二、使用工具
      • [2.1 创建测试任务](#2.1 创建测试任务)
        • [步骤一 创建线程组](#步骤一 创建线程组)
        • [步骤二 创建 HTTP 请求](#步骤二 创建 HTTP 请求)
      • [2.2 配置 HTTP 默认参数](#2.2 配置 HTTP 默认参数)
      • [2.3 添加 查看结果监听器](#2.3 添加 查看结果监听器)
      • [2.4 查看结果](#2.4 查看结果)

一、 安装步骤

步骤一 下载相关的包

安装 Jmeter 之前需要先安装好 JDK 环境 (1.8及以上)

windows 环境压缩包: 下载 Jmeter 5.6.3 安装包 zip 格式
官网下载地址

步骤二 安装 Jmeter

解压安装包copy到某个盘下,我这里放到F盘,进入 bin 目录,点击 jmeter.bat 启动 Jmeter

步骤三 设置 Jmeter 工具语言类型为中文

二、使用工具

2.1 创建测试任务

步骤一 创建线程组

设置参数值

线程数:虚拟用户数。一个虚拟用户占用一个进程或线程。设置多少虚拟用户数在这里也就是设置多少个线程数。

Ramp-up就是每个线程的执行时间间隔,0表示并发

循环次数:每个线程发送请求的次数。如果线程数为 10,循环次数为 100,那么每个线程发送 100 次请求。总请求数为 10*100=1000 。如果勾选了"永远",那么所有线程会一直发送请求,一到选择停止运行脚本。

Delay Thread creation until needed:直到需要时延迟线程的创建。

调度器配置:设置线程组启动的开始时间和结束时间(配置调度器时,需要勾选循环次数为永远)

调度器配置参数:

持续时间(秒):测试持续时间,会覆盖结束时间

启动延迟(秒):测试延迟启动时间,会覆盖启动时间

步骤二 创建 HTTP 请求

在创建的线程组,右键点击添加 HTTP 请求,如下图:

设置参数值

Web服务器

协议:向目标服务器发送 请求协议,可以是 HTTP 或 HTTPS,默认为 HTTP

服务器名称或 IP :HTTP 请求发送的目标服务器名称或 IP

端口号:目标服务器的端口号,默认值为 80
HTTP 请求

方法:发送 HTTP 请求的方法,可用方法包括 GET、POST、HEAD、PUT、OPTIONS、TRACE、DELETE 等。

路径:目标 URL 路径(URL中去掉服务器地址、端口及参数后剩余部分)

内容编码 :编码方式,默认为 ISO-8859-1 编码,可以配置为 utf-8

注意:如果是get请求,请求中发送的 URL 参数,可以将 URL 中所有参数设置在本表中,表中每行为一个参数(对应URL中的 name=value)。

2.2 配置 HTTP 默认参数

配置全局地址,后面添加多个HTTP请求都会默认使用该地址(一次修改,方便省事)

添加 HTTP消息头管理器

如果需要请求头中添加参数,可添加HTTP消息头管理器

HTTP请求默认值

2.3 添加 查看结果监听器

注意: 这里有个问题每次启动运行完后,上次数据还在,本人用了比较笨的方法删除重新添加监听器,如果有好的方法可以讨论。

添加结果树

添加聚合报告

添加汇总报告

2.4 查看结果

Label:每个JMeter的element的Name值,例如HTTP Request的Name;

样本:发出请求数量;模拟1000个用户,循环100次,所以显示了2000;

平均值:平均响应时间(单位:ms);默认是单个Request的平均响应时间,当使用了Transaction Controller时,也可以以Transaction为单位显示平均响应时间;

中位数:50%的用户响应时间小于这个值;

95%百分位:95%的用户响应时间小于这个值;

99%百分位:99%的用户响应时间小于这个值;

最小值:用户响应时间最小值;

最大值:用户响应时间最大值;

异常%:测试出现的错误请求数量百分比;请求的错误率 = 错误请求的数量/请求的总数;若出现错误就要看服务端的日志查找定位原因;

吞吐量:Throughput简称TPS,吞吐量,默认情况下表示每秒处理的请求数,也就是指服务器处理能力,TPS越高说明服务器处理能力越好;

接收KB/sec:每秒从服务器端接收到的数据量

发送KB/sec:每秒发送到服务器端的数据量

参考文档:

https://blog.csdn.net/qq_29864051/article/details/135655907

https://blog.csdn.net/u010098950/article/details/133929894

相关推荐
云采7 小时前
玩转 JMeter:Random Order Controller让测试“乱”出花样
测试工具·jmeter·压力测试
奔波儿灞爱霸波尔奔7 小时前
JMeter与大模型融合应用之JMeter线程组新增指导文档
jmeter
云采7 小时前
解锁 JMeter 的 ForEach Controller 高效测试秘籍
测试工具·jmeter·压力测试
IT古董10 小时前
【权限管理】Apache Shiro学习教程
java·apache·shiro·权限
檀越剑指大厂15 小时前
【Java基础】使用Apache POI和Spring Boot实现Excel文件上传和解析功能
java·spring boot·apache
zfj3211 天前
学英语学压测:08 jmeter html测试报告&测试报告的3种生成方式
jmeter·压力测试·测试报告·生成报告3种方式·html report
长风清留扬1 天前
小程序安全机制与隐私保护策略探讨
javascript·css·微信小程序·小程序·apache·html5
田振靓1 天前
Ubuntu上安装Apache Spark
ubuntu·spark·apache
测试老哥2 天前
Jmeter实战:编写博客标签模块增删改查自动化脚本和压测
自动化测试·软件测试·测试工具·jmeter·职场和发展·测试用例·压力测试