jmeter----性能测试之jp@gc - Stepping Thread Group

本文介绍了性能测试的核心概念,包括思考时间、步伐和压力测试时间,并详细阐述了使用JMeter进行性能测试的步骤,如安装插件、添加SteppingThreadGroup和ActiveThreadsOverTime监听器来监控线程活动。

1.说明

什么是实际的性能测试???
1)思考时间:用户在做不同操作之间有时间停顿,或者延迟,思考时间就是模拟用户的操作过程中的停顿的间。
2)步伐,速度:主要包括,大量用户进来的时间和退出时间,控制迭代之间的时间,例如,现场用户20个,设置5秒内全部进入,就是这样的情况。
3)压力测试时间:假如需要500个人同时测试30分钟,这里持续30分钟就是压测时间。

2.步骤

第一步:插件安装

插件安装教程(点击即可查看)

插件下载地址:

(客户端插件下载地址) Download :: JMeter-Plugins.org

JMeterPlugins-Standard-1.4.0.zip   
JMeterPlugins-Extras-1.4.0.zip    

(服务端插件下载地址) GitHub - undera/perfmon-agent: Server metrics fetching agent, based on SIGAR
ServerAgent-2.2.1.zip  

第二步:添加jp@gc - Stepping Thread Group

右键测试计划---->添加----->Threads(Users)----->jp@gc - Stepping Thread Group

 

 第三步:添加监听器jp@gc - Active Threads Over Time

 右键测试计划---->添加---->监听器---->jp@gc - Active Threads Over Time

完整添加HTTP Request后,点击运行测试,查看Active Threads Over Time运行结果。可查看线程陆续启动的曲线,到达设置的最大线程数后,将持续运行设置的时间,到达设置的持续时间后,陆续结束进程。

### JMeter jp@gc - Stepping Thread Group 的使用与配置 `jp@gc - Stepping Thread Group` 是 Apache JMeter 的一个高级线程组插件,专为实现更复杂、更贴近真实场景的负载测试而设计。相较于 JMeter 原生的线程组,该插件支持逐步增加和减少虚拟用户数(线程),从而模拟用户流量的渐进式变化,适用于模拟新系统上线、促销活动开始前等用户访问逐步上升的场景。 #### 核心配置参数 - **Start Users Count**:初始启动的用户数,用于设定测试开始时并发用户数量。 - **First, wait for X seconds**:测试开始前的等待时间,单位为秒,通常设置为0[^3]。 - **Then start X users**:在初始等待后启动的用户数,通常也设置为0,以便从0开始逐步增加。 - **Next, add X users every Y seconds**:每隔 Y 秒增加 X 个用户,这是定义用户逐步增长的核心参数[^3]。 - **Then hold load for X seconds**:在所有用户启动完成后,保持当前负载持续运行 X 秒,用于观察系统在持续高负载下的表现[^3]。 - **Finally, stop X users every Y seconds**:在负载保持阶段结束后,每隔 Y 秒停止 X 个用户,用于模拟用户逐渐退出的场景。 #### 使用示例 以下是一个典型的配置示例: - **Start Users Count** = 0 - **First, wait for** = 0 seconds - **Then start** = 0 users - **Next, add 10 users every 5 seconds**:每5秒增加10个用户,直到达到目标并发数。 - **Then hold load for 60 seconds**:在达到最大并发用户数后,保持60秒的负载。 - **Finally, stop 10 users every 5 seconds**:测试结束时,每5秒减少10个用户,直到所有用户停止。 #### 插件安装方法 要使用 `jp@gc - Stepping Thread Group`,首先需要下载 JMeter Plugins Manager 或直接获取 `JMeterPlugins-Standard.jar` 文件。将该 JAR 文件放置在 JMeter 安装目录下的 `lib/ext` 文件夹中,然后重启 JMeter。重启后,在线程组中即可看到新增的插件选项[^2]。 #### 适用场景 - **逐步加压测试**:适用于测试系统在用户数量逐步上升过程中的性能表现。 - **稳定性测试**:通过长时间保持高负载来验证系统的稳定性。 - **负载递减测试**:用于观察系统在用户数量逐渐减少时的表现,评估系统恢复能力。 ```python # 示例:模拟用户逐步增加的脚本逻辑(非JMeter代码,仅为逻辑示意) def simulate_stepping_load(): start_users = 0 step_users = 10 step_interval = 5 hold_duration = 60 stop_step = 5 stop_interval = 1 current_users = start_users print(f"Initial users: {current_users}") # 逐步增加用户 while current_users < 100: current_users += step_users print(f"Added {step_users} users. Total: {current_users}") time.sleep(step_interval) print(f"Holding load for {hold_duration} seconds...") time.sleep(hold_duration) # 逐步减少用户 while current_users > 0: current_users -= stop_step print(f"Stopped {stop_step} users. Remaining: {current_users}") time.sleep(stop_interval) simulate_stepping_load() ``` ###
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值