• Jmeter 性能测试之阶梯式场景、波浪式场景


    1 阶梯式场景(负载测试

    该场景主要应用在负载测试里面,通过设定一定的并发线程数,给定加压规则,遵循“缓起步,快结束”的原则,不断地增加并发用户来找到系统的性能瓶颈,进而有针对性的进行各方面的系统优化。

    使用到的线程为:jp@gc - Stepping Thread Group (deprecated)

    测试计划上:右键—>添加—>线程(用户)—>jp@gc - Stepping Thread Group (deprecated)

    图片

    同时添加以下监视器:

    HPS:每秒请求数 — jp@gc - Hits per Second
    TPS:每秒事务数 — jp@gc - Transactions per Second
    TRT:事务响应时间 — jp@gc - Response Times Over Time
    活跃线程数— jp@gc - Active Threads Over Time
    复合图查看器— jp@gc - Composite Graph

    图片

    针对阶梯式场景的参数配置,说明如下:

    ·This group will start:给定的当前负载的并发用户数
    ·First, wait for:等待XX秒后开始启动
    ·Then start:0秒(初始化)启动XX并发用户数 — 在第几个虚拟用户启动
    ·Next, add:每using ramp-up时间内启动XX的用户数
    ·threads every:每次加压阶梯下用户完成启动后保持运行XX秒
    ·using ramp-up:XX秒内完成Next, add的用户数的启动
    ·Then hold load for:This group will start并发用户数全部启动完成后保持运行XX秒 == 所有线程运行完成后再执行XX秒
    ·Finally, stop:每隔threads every的时间减少XX用户数
    ·threads every:每隔XX秒减少Finally, stop的用户数

    默认设置参数如下:

    图片

    注:
    (1)红框区域是增加线程过程,5秒钟启动10个线程,这10个线程持续运行30秒,再用5秒钟启动10个线程,这20个线程持续运行30秒

    (2)绿框区域是线程释放过程,每隔1秒停止5个并发用户数直到100个并发用户数减少为0

    图片

    2 波浪式场景(压力测试)

    该场景主要用在分段时间压测和压力测试里面,分段时间压测比如点餐系统,一天会出现用餐高峰期、平稳期和闲时区,针对该场景我们就要设计成不同时间段的压力值不同,加压方式不同等等,压力测试我们只需要使用一个场景,并将压测时间设置长即可,同样的测试报告也用jpgc的监视器获得

    使用到的线程为:jp@gc - UItimate Thread Group

    在测试计划上:右键—>添加—>线程(用户)—>jp@gc - UItimate Thread Group

    图片

    针对波浪式场景的参数配置,说明如下:

    ·Start Threads Count:给定当前时间段的并发用户数
    ·Initial Delay, sec:初始化时间,单位:秒(s)
    ·Startup Time, sec:启动时间,单位:秒(s)
    ·Hold Load For, sec:所有并发用户数启动完成后保持运行的时长,单位:秒(s)
    ·Shutdown Time:结束时间,单位:秒(s)

    分段时间压测参数(示例):

    从0秒 开始,30秒 启动 50个 虚拟用户,运行 60秒 后,10秒 停止50个虚拟用户 == 第一阶段耗时100秒
    从100秒 开始,15秒 启动 200个 虚拟用户,运行 120秒 后,10秒 停止 200个 虚拟用户 == 前两个阶段总耗时 245 秒
    从 245秒 开始,30秒 启动 50个 虚拟用户,运行 60秒 后,20秒 停止 100个 虚拟用户 == 前三个阶段总耗时 385秒
    … … … …

    图片

    压力测试(示例):

    从0秒 开始,60秒 启动 300个 虚拟用户,运行 500秒 后,10秒 停止300个虚拟用户

    图片

    3 服务器监控

    服务器监控插件:

    jp@gc - PerfMon Metrics Collector

    需要在服务器安装:ServerAgent

    图片

    服务器资源监控线形图

    图片

    图片

    用于监控机器的CPU、Memory、Disks I/O、Networks I/O 性能指标值

    服务器性能监测控件,包括CPU,Memory,Network,I/O等等(此功能用到在需监听的服务器上启动startAgent)

    根据需要选择CPU,Memory,Network I/O等

    1、下载并安装ServerAgent
    链接:
    https://pan.baidu.com/s/1onSuUgev0q3OdB-odj8ftg
    提取码:6666

    2、通过xftp方式把包上传到服务器上,解压

    –1)上传压缩包到服务器建议公司环境安装目录下或opt目录下
    –2)解压命令:unzip ServerAgent-2.2.3.zip
    –3)进入解压后的文件:cd ServerAgent-2.2.3
    –4)查看所有文件:ll
    –5)启动文件:./starAgent.sh
    注:启动ServerAgent时,需要ROOT权限
    启动ServerAgent时,需要在其对应目录下启动
    在监控服务器性能时,需要一直是启动状态

    3、更改端口并启动服务:

    Linux 下启动:./startAgent.sh 回车就可以启动,默认的端口是4444
    若默认端口4444被占用,则需要指派端口 (阿里云服务器4444端口是连接访问不到的)
    端口可以自定义,大于1024即可
    启动>>
    ./startAgent.sh --udp-port 0 --tcp-port 4445

    4、启动服务后去检查防火墙是否关闭

    –1)服务器\防火墙是关闭状态那就没有问题
    –2)启动防火墙:systemctl start firewalld
    –3)关闭防火墙:systemctl stop firewalld
    –4)检查防火墙状态:systemctl status firewalld
    –5)如果没有关闭防火墙,那么就需要关闭或执行下面的命令把端口添加到防火墙内

    防火墙添加开放端口:

    firewall-cmd --permanent -add-port=4445/tcp
    

    现在我邀请你进入我们的软件测试学习交流群:746506216】,备注“入群”, 大家可以一起探讨交流软件测试,共同学习软件测试技术、面试等软件测试方方面面,还会有免费直播课,收获更多测试技巧,我们一起进阶Python自动化测试/测试开发,走向高薪之路。


    资源分享

    最后感谢每一个认真阅读我文章的人,看着粉丝一路的上涨和关注,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走…

    在这里插入图片描述

    ​这些资料,对于想从事【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴我走过了最艰难的路程,希望也能帮助到你!凡事要趁早,特别是技术行业,一定要提升技术功底。希望对大家有所帮助…….

    在这里插入图片描述

  • 相关阅读:
    如何处理Flutter应用在iOS平台上的兼容性问题
    HashMap 源码解析超详解
    深度学习必备Python基础知识充电2
    基于差分进化与优胜劣汰策略的灰狼优化算法-附代码
    智安网络|揭秘安全测试和渗透测试的异同点
    消息队列—RabbitMQ如何保证消息可靠性?
    使用Postman工具做接口测试 —— 环境变量与请求参数格式!
    公约数(也叫公因数)|公倍数 |小知识|Golang
    python—类的组成、对象的创建、面向对象三大特征
    c++匿名对象
  • 原文地址:https://blog.csdn.net/m0_67695717/article/details/127087546