百度360必应搜狗淘宝本站头条
当前位置:网站首页 > IT知识 > 正文

JMETER性能测试_JMETER性能测试指标

liuian 2025-09-14 22:27 42 浏览

jmeter 为性能测试提供了一下特色:

jmeter 可以对测试静态资源(例如 js、html 等)以及动态资源(例如 php、jsp、ajax 等等)进行性能测试

jmeter 可以挖掘出系统最大能处理的并发用户数

jmeter 提供了一系列各种形式的性能分析报告

使用 jmeter 一般用于以下两种类型的性能测试

负载测试:通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。

压力测试:测试系统能承受的最大负载能力。目的在于发挖掘出目标服务系统可以处理的最大负载

使用 jmeter 进行性能测试的基本过程

对上图进行简要的说明

新增线程组

创建测试线程组,并设置线程数量及线程初始化启动方式。

新增 JMeter 元组

创建各种默认元组及测试元组,填入目标测试静态资源请求和动态资源请求参数及数据。

新增监听器

创建各种形式的结果搜集元组,以便在运行过程及运行结束后搜集监控指标数据。

运行&查看结果

调试运行,分析指标数据,挖掘性能瓶颈、评估系统性能状态。

1、jmeter 并发测试

1)添加线程组,初始化线程组

假设:

Ramp-Up Period:T (有人称之为启动时间,有人说是准备时长,看个人喜好)

线程数:n

循环次数:a

若每个循环运行时间是 t

当时间到 S = (T- T/n)时,最后一个线程启动,若要使所有线程同时运作,则需要在最后一个线程启动的时候第一个线程仍未关闭,为达到这个要求,需满足 a·t > S及a > S/t

每一个线程运行时间既是R = a·t(此处的a是大于S/t的某一值),则第一个线程在时间点为R 的时候停止,整个测试理论运行时间则是 :S + R = (1-1/n)·T + a·t

总结:

测试中变量是 线程数 n ,每个循环时间 t 是个实践值,循环次数 a 只是为了延长单个线程的运行时间,从而保证当最后一个线程启动时,所有线程都在运行中,达到压测效果。

例如:如何使用jmeter进行并发登录测试

第一种方案直接从数据库中获取账号和密码

1、设置线程数为20 ,我们的并发用户量就是20个用户同时登录

2、添加定时器(同步定时器(Synchronizing Timer)-->用来设置集合点,其作用是:阻塞线程,直到指定的线程数量到达后,再一起释放,可以瞬间产生很大的压力

3、设置集合点,当用户数量达到20个的时候再同时请求进行登录操作

(1)Number of Simulated Users to Group by:模拟用户的数量,即指定同时释放的线程数数量,若设置为0,等于设置为线程组中的线程数量;

(2)Timeout in milliseconds:超时时间,即超时多少毫秒后同时释放指定的线程数;如果设置为0,该定时器将会等待线程数达到了设置的线程数才释放,若没有达到设置的线程数会一直死等。如果大于0,那么如果超过Timeout inmilliseconds中设置的最大等待时间后还没达到设置的线程数,Timer将不再等待,释放已到达的线程。默认为0同步定时器(Synchronizing Timer)的超时时间设置要求:超时时间 > 请求集合数量 * 1000 / (线程数 / 线程加载时间)

第二种方案对登录账号和密码进行参数化

1、添加设置线程数

2、添加定时器,设置集合点

3、添加CSV Data Set Config进行参数化配置

2、性能插件下载安装及使用

下载地址:jmeter-plugins.org

安装:下载后文件为plugins-manager.jar格式,将其放入jmeter安装目录下的lib/ext目录,然后重启jmeter,即可。

启动jemter,点击选项,最下面的一栏,如下图所示:



Installed Plugins(已安装的插件):即插件jar包中已经包含的插件,可以通过选中勾选框,来使用这些插件;

Available Plugins(可下载的插件):即该插件扩展的一些插件,可以通过选中勾选框,来下载你所需要的插件;

Upgrades(可更新的插件):即可以更新到最新版本的一些插件,一般显示为加粗斜体,可以通过点击截图右下角的Apply Changes and Restart Jmeter按钮来下载更新;

PS:一般不建议进行更新操作,因为最新的插件都有一些兼容问题,而且很可能导致jmeter无法使用

1)阶梯压测--Concurrency Thread Group

在plugins插件组中,有一个的插件,叫做:Concurrency Thread Group

相关介绍以及下载地址如下:Documentation :: JMeter-Plugins.org

其实最好的办法,是直接下载jmeter的第三方插件Plugin Manager(其中包含了很多扩展支持插件),解压后将其放入jmeter安装目录的jmeter-3.0\lib\ext路径下,然后重启即可。

下载地址:Documentation :: JMeter-Plugins.org

安装完成后,我们开始创建测试计划,并选择Concurrency Thread Group:

Concurrency Thread Group:

下部分,是该压测的并发数据输入框。来看下各个参数的含义:

Target Concurrency:目标并发数

Ramp Up Time:加速时间

Ramp-Up Steps Count:加速次数

Hold Target Rate Time:保持目标速率时间

Time Unit:时间单位

Thread Iterations Limit:线程迭代次数限制,即循环次数(空,即为一次)

Log Threads Status into File:将线程状态记录到文件中(保存日志文件);

以上图中所示为例,首先Time Unit选择的是min(分),输入的数据为:

Target Concurrency: 50

Ramp up Time(min): 1

Ramp-up Steps Count: 5

Hold Target Rate Time(min): 1

Thread Iterations Limit: (空)

此用例场景为 ,在“Ramp up Time(min): ”1分钟的时间内,一共产生目标线程“Target Concurrency: ”50个;并且,分成“Ramp-up Steps Count: ”5个阶段来完成;在目标线程产生结束后,维持该线程生产速度“Hold Target Rate Time(min): ”1分钟;并且循环执行“Thread Iterations Limit: ”1次。over。

图中红色线条显示了单个循环内线程的产生概况,X轴为时间,共2min;Y轴为线程数,最高50条。5个阶梯显示出了线程的阶梯状分布。

2)Jmeter — jp@gc - Ultimate Thread Group

一、安装插件

首先,需要安装jp@gc - Ultimate Thread Group插件,这个不再详述

二、添加线程

步骤:右键测试计划->添加->Threads(Users)->jp@gc - Ultimate Thread Group

Start Threads Count:当前行启动的线程总数。线程将一个接一个地开始,直到达到定义的线程数为止。

Initial Delay/sec:延时启动当前行的线程,单位:秒 S

tartup Time/sec:启动当前行所有线程达峰值所需时间,单位:秒

Hold Load For/sec:当前行线程达到峰值后的稳定加载时间,单位:秒

Shutdown Time:停止当前行所有线程所需时间,单位:秒

举例说明:

配置说明:

第一个阶段,花30s的时间,启动20个线程,持续运行60s,用10s的时间停止掉

第二个阶段,第一阶段的线程都停止后,再开始启动第二个阶段的线程,花30s的时间再启动20个线程,再持续60s,用10s停掉

这样像波浪一样拍打服务器,观察服务器的性能,看系统是否能平稳运行。

3、查看结果及监控服务器资源

监听器

右键测试计划->添加->监听器->添加以下三个监听器--->完整添加HTTP Request后,点击运行测试,查看各监控器中的运行结果。

jp@gc - Actiive Threads Over Time

不同时间活动用户数量展示

展示阶梯加压测试的图标

Active Threads Over Time如:这个图里可以清楚看到,并发线程数量呈现出明显的阶梯形状。在不同的时间段内,服务器处在不同的压力级别当中。

Active Threads Over Time如:这个图里可以清楚看到,并发线程数量呈现出明显的阶梯形状。在不同的时间段内,服务器处在不同的压力级别当中。

TPS变化展示图:

Response Times Over Time

PerfMon Metrics Collector:

服务器性能监控数据采集器。在性能测试过程中,除了监控TPS和TRT,还需要监控服务器的资源使用情况,比如CPU、memory、I/O等。

该插件可以在性能测试中实时监控服务器的各项资源使用。

下载地址:Install :: JMeter-Plugins.org

其中JMeterPlugins-Standard和JMeterPlugins-Extras是客户端的插件,ServerAgent是服务端的插件。

下载成功后,复制JmeterPlugins-Extras.jar和
JmeterPlugins-Standard.jar两个文件,放到jmeter安装文件中的lib/ext中,重启jmeter,即可在监听器看到该监视器插件。

将ServerAgent-2.2.1.jar上传到被测服务器,解压,进入目录,Windows环境,双击ServerAgent.bat启动;linux环境执ServerAgent.sh启动,默认使用4444端口。

如出现如下图所示情况,即表明服务端配置成功:

1、服务端启动校验

CMD进入命令框,观察是否有接收到消息,如果有,即表明ServerAgent成功启动。

2、客户端监听测试

给测试脚本中添加jp@gc - Perfmon Metrics Collector监听器,然后添加需要监控的服务器资源选项,启动脚本,即可在该监听器界面看到资源使用的曲线变化。如下图所示:

其他监听器

在这里我们添加如下监听器,如图所示

运行&查看结果

如果启动运行 jmeter,可以单击添加的监听器查看运行过程中的监控指标数据,也可以等运行结束后,再查看。

结果说明

下面我们就监听器所采集的结果图进行简要的说明:

图形结果

察看结果树

用表格查看结果

查看聚合报告

1、Lable:Label:每个 JMeter 的 element(例如 HTTP Request)都有一个 Name 属性,这里显示的就是 Name 属性的值;

2、#Samples:表示这次测试中一共发出了多少个请求,如果模拟10个用户,每个用户迭代10次,那么这里显示100;【我的是用户有100,只迭代一次,因此也是100】

3、Average:平均响应时间——默认情况下是单个 Request 的平均响应时间,当使用了 Transaction Controller 时,也可以以Transaction 为单位显示平均响应时间;

4、Median:中位数,也就是 50% 用户的响应时间;

5、90% Line ~ 99% Line:90% ~99%用户的响应时间;

6、Min:最小响应时间;

7、Maximum:最大响应时间;

8、Error%:本次测试中出现的错误率,即 错误的请求的数量/请求的总数;

9、Throughput:吞吐量——默认情况下表示每秒完成的请求数(Request per Second),当使用了 Transaction ;

10、Received KB/src:每秒从服务器端接收到的数据量;

11、Sent KB/src:每秒从客户端发送的请求的数量。、




原文链接:
https://blog.csdn.net/Nkx_kaixin/article/details/123546766

相关推荐

stop0x0000007b蓝屏(stop0X0000007b蓝屏,修改注册表)
stop0x0000007b蓝屏(stop0X0000007b蓝屏,修改注册表)

步骤/方式1将电脑送到当地的维修店步骤/方式2然后将师傅维修一下蓝屏的问题当电脑启动蓝屏出现错误代码0x0000007b时,首先我们将电脑重启,在开机时不停按启动热键进入到bios设置页面,进入页面后找到“IntegratedPeriphe...

2026-01-14 11:21 liuian

电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
  • 电脑开机安全模式也进不去(电脑开机安全模式也进不去桌面)
怎样设置默认打印机(打印机设置彩色打印在哪里设置)

步骤如下:1.单击Windows“开始”菜单,指向“设置”,单击“打印机”,打开“打印机”窗口。2.右键单击打印机图标,系统弹出快速菜单,单击其中的“设为默认值”。如果“打印机”窗口没有当前使用的打印...

机械硬盘坏了能修吗(机械硬盘损坏可以修复吗)

硬盘修复是很多人都可能会面临的难关。硬盘是计算机上最重要的组成部分,是计算机上的数据存储设备,因此一旦硬盘发生故障,用户很可能会丢失所有数据。况且硬盘是机械设备,有一定的使用寿命,长时间使用出现故障...

win7正版怎么下载(我告诉你怎么下载win7)

如题,题主想在红警之家下载红警,很简单,可以用迅雷下载软件下载,下载以后用解压软件解压就行了,但是红警这款软件在winxp系统下,是最理想的,7系统下面会出现闪退的情况。下载很容易的,闪退的时候,设置...

电脑关机脚本bat命令(win10关机bat脚本)

bat关机命令需要使用文本文档。使用文本文档制作bat关机命令步骤如下所示:1、在电脑桌面空白处点击鼠标右键。2、在鼠标右键菜单中,选择新建文本文档。3、点击打开文本文档。4、在新建文本文档中输入关机...

fat32格式是什么意思(u盘fAT32格式是什么意思)

是一种分区格式。这种格式使用32位文件分配表,大大提高了磁盘的管理能力,打破了每个分区只有4GB的FAT16限制。对于使用FAT32文件系统的每个逻辑盘内部空间又可划分为三部分,依次是引导区(BOO...

手机系统更新软件(手机系统更新软件不更新会怎样)
手机系统更新软件(手机系统更新软件不更新会怎样)

第一步:打开苹果手机的设置,点击“通用”选项进入。第二步:选择“软件更新”选项进入第三步:在软件更新界面,如果有新的更新,点击“下载并安装”即可!应用商店里一键更新。在手机软件里,为了更新最新版本可以进软件商店里面找一下,更新点一下,然后它...

2026-01-14 09:37 liuian

联想小新如何重装系统(联想小新重装系统怎么操作)

联想小新重装系统,方法∶在关机状态下,按下电脑的一键恢复按钮(需确保笔记本屏盖在打开状态)。首先找到按键孔,用针对准插孔,捅一下,电脑启动,进入启动选择界面,选择systemrecovery,按回车...

桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
  • 桌面上的文件删除了怎么恢复
麦克风没声音(win11麦克风没声音)

一.先确保你的麦克风能正常使用。请确保麦克风本身是好的,连接线没有问题,请确保你的测试软件已正确设置,如YY之类的软件。二.确认你的麦克风是否插入正确的插孔一般麦克风是插入红色插孔中。三.确认你...

vs2015官网下载(vs2015 下载)

VisualStudio2015下载完成之后,会有一个名为“vs2015.pro_chs.iso”的光盘镜像文件。光盘镜像文件将光盘镜像文件在虚拟光驱中加载之后,可以打开查看光盘内容。安装文件双...

u盘自我保护怎么解除(怎么样取消u盘的自我保护)

要解除U盘保护,首先插入U盘后打开“我的电脑”,右击选择U盘图标,点击“属性”。在弹出的对话框中,选择“安全”标签,然后点击“编辑”按钮,根据自己的需要选择或取消“对于系统用户完全控制”权限,点击“确...

如何设置自动关机win10(windows 10如何设置自动关机)

Win10设置自动关机,需要以下步骤:1.按“Win+R”组合键,呼出“运行”;2.将定时关机命令设置为“shutdown-s-t7200”;3.在“运行”内输入命令,点击“确定”即可;4.如果设置错...

公版驱动(公版驱动和专用驱动的区别)

公版这个名词特指显卡本身,与驱动无关。一般采用芯片制造商自己设计的显卡,称为公版。显卡驱动只有WHQL版本、Beta版本、兼容版、定制版之分。兼容版一般称为万能驱动,不会给显卡带来多少优化,只是让你能...