当前位置: 首页 > news >正文

JMeter 性能测试基本过程及示例

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

jmeter 可以对测试静态资源(例如 js、html 等)以及动态资源(例如 php、jsp、ajax 等等)进行性能测试
jmeter 可以挖掘出系统最大能处理的并发用户数
jmeter 提供了一系列各种形式的性能分析报告

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

负载测试:通过测试系统在资源超负荷情况下的表现,以发现设计上的错误或验证系统的负载能力。
压力测试:测试系统能承受的最大负载能力。目的在于发挖掘出目标服务系统可以处理的最大负载。

 基本过程

 下面我们看下使用 jmeter 进行性能测试的基本过程

对上图进行简要的说明
新增线程组
创建测试线程组,并设置线程数量及线程初始化启动方式。
新增 JMeter 元组
创建各种默认元组及测试元组,填入目标测试静态资源请求和动态资源请求参数及数据。
新增监听器
创建各种形式的结果搜集元组,以便在运行过程及运行结束后搜集监控指标数据。
运行&查看结果
调试运行,分析指标数据,挖掘性能瓶颈、评估系统性能状态;

示例
下面我们以打开百度演示上述过程。
新增线程组

在 jmeter 的 bin 目录下双击 jmeter.bat或ApacheJMeter.jar 启动 jmeter,如下图:

在左边操作栏中选择“测试计划”,右击新增一个线程组,如图所示:

初始化线程组相关信息

新增 JMeter 元组
添加默认配置元素,添加如下默认配置,如图

各默认组件配置如图所示。HTTP Cache Manager

HTTP Cookie 管理器

HTTP 请求默认值

添加 HTTP Request 元组
在线程组上右击新增 HTTP 请求,如图:

HTTP 请求设置如图:

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

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

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

察看结果树

用表格查看结果

聚合报告

总结
本次就 jmeter 使用的基本过程如何使用进行了分享,并就访问百度首页进行了实际测试演示。在最后就常用的几个监听器中字段含义进行了说明。请大家根据企业实际项目进行演练,请勿使用示例中百度示例。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:【文末自行领取】

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关文章:

  • 【测试】混沌工程
  • 国产RISC-V案例分享,基于全志T113-i异构多核平台!
  • Leetcode面试经典150题-322.零钱兑换
  • 数据结构和算法基础(一)
  • 求职Leetcode题目(12)
  • Spring Boot技术:构建高效网上购物平台
  • 《黑神话:悟空》在全球爆火的原因是什么?
  • Ubuntu开机进入紧急模式处理
  • windows10 docker 推送本地镜像
  • SQL进阶技巧:如何获取状态一致的分组? | 最大、最小值法
  • JVM(HotSpot):字符串常量池(StringTable)
  • 在Robot Framework中Run Keyword If的用法
  • 汽车发动机控制存储芯片MR2A08A
  • Trilium Notes笔记本地化部署与简单使用指南打造个人知识库
  • 云计算Openstack Glance
  • Android交互
  • Apache的80端口被占用以及访问时报错403
  • JAVA_NIO系列——Channel和Buffer详解
  • js正则,这点儿就够用了
  • Rancher-k8s加速安装文档
  • vue2.0开发聊天程序(四) 完整体验一次Vue开发(下)
  • vue-router 实现分析
  • vue和cordova项目整合打包,并实现vue调用android的相机的demo
  • zookeeper系列(七)实战分布式命名服务
  • 基于Vue2全家桶的移动端AppDEMO实现
  • 十年未变!安全,谁之责?(下)
  • media数据库操作,可以进行增删改查,实现回收站,隐私照片功能 SharedPreferences存储地址:
  • ​一帧图像的Android之旅 :应用的首个绘制请求
  • !$boo在php中什么意思,php前戏
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (42)STM32——LCD显示屏实验笔记
  • (Arcgis)Python编程批量将HDF5文件转换为TIFF格式并应用地理转换和投影信息
  • (MATLAB)第五章-矩阵运算
  • (Spark3.2.0)Spark SQL 初探: 使用大数据分析2000万KF数据
  • (第三期)书生大模型实战营——InternVL(冷笑话大师)部署微调实践
  • (十五)、把自己的镜像推送到 DockerHub
  • (一)基于IDEA的JAVA基础1
  • (已解决)Bootstrap精美弹出框模态框modal,实现js向modal传递数据
  • (转)h264中avc和flv数据的解析
  • .form文件_一篇文章学会文件上传
  • .NET : 在VS2008中计算代码度量值
  • .NET CF命令行调试器MDbg入门(二) 设备模拟器
  • .Net Redis的秒杀Dome和异步执行
  • .net 发送邮件
  • .NET6实现破解Modbus poll点表配置文件
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .net下简单快捷的数值高低位切换
  • /使用匿名内部类来复写Handler当中的handlerMessage()方法
  • @NotNull、@NotEmpty 和 @NotBlank 区别
  • @RequestMapping 的作用是什么?
  • @软考考生,这份软考高分攻略你须知道
  • [AIGC] 如何建立和优化你的工作流?
  • [ai笔记4] 将AI工具场景化,应用于生活和工作
  • [Android]Tool-Systrace
  • [Bugku] web-CTF靶场系列系列详解⑥!!!