JMeter 教程 - 定时器上

JMeter 教程 - 定时器(上)

在 JMeter 中,定时器(Timers)用于在取样器(Sampler)之间引入延迟,以模拟真实用户的操作行为。定时器可以帮助避免服务器过载、模拟用户思考时间以及实现更真实的负载测试。

一、常用定时器

  1. Constant Timer
  2. Gaussian Random Timer
  3. Uniform Random Timer
  4. Constant Throughput Timer
  5. Synchronizing Timer

二、定时器详解

1. Constant Timer

用途:在取样器之间引入固定的延迟时间。

添加方法

  • 右键点击 Thread Group 或其他元素,选择 Add > Timer > Constant Timer

配置参数

  • Thread Delay (in milliseconds):延迟时间,单位为毫秒。

示例
设置 Thread Delay2000,表示每个取样器之间有 2 秒的固定延迟。

2. Gaussian Random Timer

用途:在取样器之间引入符合高斯分布的随机延迟时间。

添加方法

  • 右键点击 Thread Group 或其他元素,选择 Add > Timer > Gaussian Random Timer

配置参数

  • Constant Delay Offset (in milliseconds):固定延迟时间,单位为毫秒。
  • Deviation (in milliseconds):延迟时间的标准差,单位为毫秒。

示例
设置 Constant Delay Offset1000Deviation300,表示延迟时间为 1000 毫秒加上一个标准差为 300 毫秒的高斯随机值。

3. Uniform Random Timer

用途:在取样器之间引入符合均匀分布的随机延迟时间。

添加方法

  • 右键点击 Thread Group 或其他元素,选择 Add > Timer > Uniform Random Timer

配置参数

  • Random Delay Maximum (in milliseconds):最大随机延迟时间,单位为毫秒。
  • Constant Delay Offset (in milliseconds):固定延迟时间,单位为毫秒。

示例
设置 Random Delay Maximum500Constant Delay Offset1000,表示延迟时间为 1000 毫秒加上一个最大为 500 毫秒的均匀随机值。

4. Constant Throughput Timer

用途:控制取样器的吞吐量,以每分钟的请求数(requests per minute, RPM)为单位。

添加方法

  • 右键点击 Thread Group 或其他元素,选择 Add > Timer > Constant Throughput Timer

配置参数

  • Target Throughput (in samples per minute):目标吞吐量,单位为每分钟样本数。

示例
设置 Target Throughput60,表示每分钟最多执行 60 个取样器。

5. Synchronizing Timer

用途:使多个线程在同一时间点同步执行一个取样器。

添加方法

  • 右键点击 Thread Group 或其他元素,选择 Add > Timer > Synchronizing Timer

配置参数

  • Number of Simulated Users to Group by:同步执行的线程数量。
  • Timeout in milliseconds:超时时间,单位为毫秒。

示例
设置 Number of Simulated Users to Group by10,表示每次有 10 个线程同时执行取样器。

三、定时器的使用示例

下面是一个示例测试计划,演示如何使用上述定时器:

  1. 创建测试计划:打开 JMeter,创建新的测试计划。

  2. 添加线程组

    • 右键点击 Test Plan,选择 Add > Threads (Users) > Thread Group
    • 设置 Number of Threads (users)10
    • 设置 Ramp-Up Period (seconds)10
    • 设置 Loop Count1
  3. 添加 Constant Timer

    • 右键点击 Thread Group,选择 Add > Timer > Constant Timer
    • 设置 Thread Delay2000 毫秒。
  4. 添加 Gaussian Random Timer

    • 右键点击 Thread Group,选择 Add > Timer > Gaussian Random Timer
    • 设置 Constant Delay Offset1000 毫秒,Deviation300 毫秒。
  5. 添加 Uniform Random Timer

    • 右键点击 Thread Group,选择 Add > Timer > Uniform Random Timer
    • 设置 Random Delay Maximum500 毫秒,Constant Delay Offset1000 毫秒。
  6. 添加 Constant Throughput Timer

    • 右键点击 Thread Group,选择 Add > Timer > Constant Throughput Timer
    • 设置 Target Throughput60 样本/分钟。
  7. 添加 Synchronizing Timer

    • 右键点击 Thread Group,选择 Add > Timer > Synchronizing Timer
    • 设置 Number of Simulated Users to Group by10Timeout in milliseconds10000 毫秒。

通过这些步骤,你可以在 JMeter 中使用各种定时器,控制取样器之间的延迟时间,使测试场景更加真实。在实际使用中,可以根据具体需求添加和配置相应的定时器,以实现更精细的负载测试。

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值