Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程)

2023-10-29

1.简介

  在性能测试中,有时需要模拟一种实际生产中经常出现的情况,即:从某个值开始不断增加压力,直至达到某个值,然后持续运行一段时间,然后继续加压达到某个值持续运行,如此循环直到达到预期的峰值,运行一段时间。

  在jmeter中,有这样一个插件,可以帮我们实现这个功能,这个插件就是:Stepping Thread Group ,也就是常说的步长插件。

2.测试准备

  Stepping Thread Group是jmeter插件的一种,其作用就是模拟实际的生产情况,不断对服务器施加压力,直至到某个值,然后持续运行一段时间。

1.首先给你的JMeter安装一个插件管理器,下载地址:https://jmeter-plugins.org/install/Install/  具体步骤:

(1)在地址栏输入:https://jmeter-plugins.org/downloads/all/
(2)下载放到jmeter解压缩文件的\lib\ext目录下,
(3)然后重新启动打开jmeter

如果你想学习自动化测试,我这边给你推荐一套视频,这个视频可以说是B站播放全网第一的自动化测试教程,同时在线人数到达1000人,并且还有笔记可以领取及各路大神技术交流:798478386   

【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)_哔哩哔哩_bilibili【已更新】B站讲的最详细的Python接口自动化测试实战教程全集(实战最新版)共计200条视频,包括:1、接口自动化之为什么要做接口自动化、2、接口自动化之request全局观、3、接口自动化之接口实战等,UP主更多精彩视频,请关注UP账号。icon-default.png?t=N7T8https://www.bilibili.com/video/BV17p4y1B77x/?spm_id_from=333.337 

2.如果觉得下载页面慢或者不想下载的可以关注宏哥的公众号后,输入:插件管理,获取这个插件plugin manager。

3.在Available Plugins选项中输入jpgc后空格,就可以搜索出jpgc插件,然后勾选jpgc - Standard Set后,点击Apply Changes and Restart JMeter后等待插件安装完成。

4.如果下载失败,可以在这个地址下载,下载地址:https://jmeter-plugins.org/downloads/old/

下载界面如下:

  5.下载后需要解压,然后将JMeterPlugins-Standard.jar包放在jmeter安装目录的jmeter-3.0\lib\ext路径下,重新启动jemter即可。

3.步长插件介绍

1.新建一个jpgc的Thread Group点击add-Thread,如下图所示:

2.选jpgc stepping group,如下图所示:

 3.设置Step或者步长,然后看下面曲线图,如下图所示:

解释下参数设置:

① 表示这个线程会最大用户是100个

② 等待10秒,这个时候还没有用户进入

③ 10个用户开始

④ 和 ⑤ 这里一起理解,每10秒进10个用户

⑥ ramp-up,这里设置0,例如40个用户直接添加到50个用户,没有使用曲线添加。

⑦ 持续压测60秒,一分钟

⑧ 和 ⑨,退用户,每10秒退出10个用户。

⑩ 上面各种设置的图形表示

根据下面的图形,对照上面的各个输入框的设置,就应该很好理解这个压力负载场景。

4.实例实战

1. 在上边的基础上,添加一个HTTP Request,百度举例,如下图所示:

2. 添加三种类型报告,如下图

 3. 点击运行测试,等待4分十秒,看看结果这里我们主要看看AggregateGraph这个报告。勾选以下红圈的,如下图所示:

 

4.点击 DisplayGraph,如下图所示:

5.小结

什么是实际的性能测试

1)有思考时间,用户在做不同操作之间有时间停顿,或者延迟,思考时间就是模拟用户的操作过程中的停顿时间。

2)步伐,速度:主要包括,大量用户进来的时间和退出时间,控制迭代之间的时间,例如,前面文章介绍的一个现场用户20个,设置5秒内全部进入,就是这样的情况。

3)压力测试时间:加入我需要500个人同时测试30分钟,这里持续30分钟就是压测时间。

       所以,真实的性能测试场景是,例如,一开始有不部分人已经进入页面,这里加入5个用户,然后我需要持续添加用户进入,例如10秒进入2个用户,一共需要进入500个人,然后保持500个用户,做同样操作30分钟,最后开始,陆续退出用户,例如10秒退5个用户。如果这个过程,用坐标和曲线表示,刚好就是一个梯形的图形。如果,你使用过Loadrunner的压力负载场景设计,你就很清楚这个过程。像下面这个图片

解释一下这个场景,开始从0开始进入用户,一分钟就进入了10个,持续时间是5分钟,第六分钟开始退出用户,这里30秒内全部退出10个用户。 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程) 的相关文章

随机推荐

  • 人工神经网络的设计与实现(二) 感知机

    感知机 感知机 perceptron 是ANN的基本单元 至少我现在是这么觉得的 如果我学到后来发现不是 会来更正的 感知机 如下图 就是伸出几只小触手去感知这个世界 感知 感知 然后触手获取数据的加权和通过函数 f 得到的值即为该感知机的
  • 【热门框架】Mybatis-Plus标准CRUD操作

    MyBatis Plus提供了一系列标准的CRUD操作 包括insert delete update和select 下面是这些操作的指引 插入数据 1 使用实体类进行插入 User user new User user setName To
  • Idea license server地址

    以下都可以试试 http idea iteblog com key phphttp intellij mandroid cn http idea imsxm com https jetlicense nss im
  • 系统扩容心得

    author skatetime 2010 11 10 系统扩容心得 由于业务的快速发展 系统需要扩容 我们这次系统扩容动作比较小 相对不是很复杂 但过程是曲折的 结果是完美的 从开始准备到完成实施期间的每一个小细节都需要我们倍加注意 因为
  • vue-cli配置文件的查看和修改

    针对vue cli gt 3的版本 介绍两种修改方式 1 vue ui 在终端执行 vue ui 会打开页面 可以导入要管理的项目 会打开页面如下 2 在根目录下新建vue config js文件 添加要修改的配置
  • SSH整合中文

    在struts2里面配置一个常量
  • 第37章_瑞萨MCU零基础入门系列教程之DAC数模转换模块

    本教程基于韦东山百问网出的 DShanMCU RA6M5开发板 进行编写 需要的同学可以在这里获取 https item taobao com item htm id 728461040949 配套资料获取 https renesas do
  • http服务

  • ElasticSearch性能优化总结

    Elasticsearch是目前大数据领域最热门的技术栈之一 经过近8年的发展 已从0 0 X版升级至6 X版本 虽然增加了很多的特性和功能 但是在主体架构上 还是没有太多的变化 下面就把我对于ES使用实践的一些经验总结一下 供大家参考 也
  • VS2019未能返回新代码元素,可能是语法错误

    最近在写MFC的工程 在某次添加组件变量时 弹出提示框 未能返回新代码元素 可能是语法错误 检查了一遍没有语法错误 编译正常 网上所说的 将ncb文件删除就可以解决 找了半天没找到这个后缀名的文件 后来发现他们的帖子的发表时间都很老了 当初
  • 继电器驱动电路(各种单片机、CD4013触发器驱动电路图)

    继电器工作原理详解 附3种驱动电路图 继电器原理及分类 继电器知识点大全 看完一定有收获 线圈 继电器是一种电子控制器件 它具有控制系统 又称输入回路 和被控制系统 又称输出回路 通常应用于自动控制电路中 它实际上是用较小的电流去控制较大电
  • 基于ruoyi中shiro框架如何实现免密登录

    基于ruoyi中shiro框架如何实现免密登录 所做项目与第三方合作 系统间存在一些接口调用 需要做授权登录 我们的项目整体使用springboot框架结合部分ruoyi的后台管理框架 认证登陆采用了shiro框架 密码在数据库中经过盐值
  • vue-awesome-swiper 配置分页不显示

    使用 vue awesome swiper 的时候遇到一个问题 明明配置了分页 在页面上却没有展示出小圆点 数据量也是足够分页的 安装的 vue awesome swiper 是 4 1 1 版本的 这是 html 的代码片段
  • Android 蓝牙笔记-底层RFKILL驱动

    概念 RFKill 就是RF 射频 设备的开关 有类似一键关闭所有射频外设的功能 比如当我们在飞机上飞行开启飞行模式时候 所有这些RF相关的设备都需要关闭 linux的rfkill子系统提供了用于禁用系统中任何无线电发射器的通用接口 发射设
  • AD20-封装的创作及添加

    原理图你是可以画的大一点 丑一点 但是封装库一定要按一比一的比例去画 否者是会影响后期的制作 也有可能是不能做出来的 画原理图是在 这个文件中进行 Ctrl m 是测量中心距离 先选中一个中心 在选中另一个中心 gg 按两次 是设置栅格的长
  • 浅谈数组与链表的区别

    1 区别 1 数组元素地址需要连续内存空间 链表节点地址不需要连续内存空间 2 数组在最初就确定了成员数量 后期无法修改 链表的节点个数可动态增减 3 数组元素只能是同1种数据类型 链表节点可携带多种数据类型 4 数组从栈中分配空间 链表从
  • java元注解

    java元注解 本文涉及以下这些内容 如果不清楚的话 可以看一下 相信会对你有些许帮助 1 使用IntelliJ IDEA 2018查看字节码 2 使用IntelliJ IDEA 2018生成帮助文档 本文主要针对于java8 java8定
  • 第十四届蓝桥杯B组第一期模拟题

    1 十进制整数 2 在十进制中是 1 位数 在二进制中对应 10 是 2 位数 十进制整数 22 在十进制中是 2 位数 在二进制中对应 10110 是 5 位数 请问十进制整数 2022 在二进制中是几位数 include
  • Python响应式类库RxPy简介

    RxPy是非常流行的响应式框架Reactive X的Python版本 其实这些版本都是一样的 只不过是各个语言的实现不同而已 因此 如果学会了其中一种 那么使用其他的响应式版本也是轻而易举的 之前我就听说过这个框架 最近决定好好研究一下 基
  • Jmeter(三十六) - 从入门到精通进阶篇 - 设置负载阶梯式压测场景(详解教程)

    1 简介 在性能测试中 有时需要模拟一种实际生产中经常出现的情况 即 从某个值开始不断增加压力 直至达到某个值 然后持续运行一段时间 然后继续加压达到某个值持续运行 如此循环直到达到预期的峰值 运行一段时间 在jmeter中 有这样一个插件