Jmeter-Flow Control Action(测试活动)

1、简介

Flow Control Action 采样器是一个用于条件控制器的采样器。测试元素不是生成样本,而是暂停或停止所选目标。
此采样器还可以与事务控制器结合使用,因为它允许包含暂停而无需生成样本。对于可变延迟,将暂停时间设置为零,并添加一个 Timer 作为子项。

“停止”操作在完成任何正在进行的示例后停止线程或测试。“立即停止”操作无需等待样品完成即可停止测试;它会中断任何活动的样本。如果某些线程未能在 5 秒时限内停止,则会在 GUI 模式下显示一条消息。您可以尝试使用Stop命令来查看这是否会停止线程,但如果不会,您应该退出 JMeter。在 CLI 模式下,如果某些线程在 5 秒的时间限制内未能停止,JMeter 将退出。

可以使用 JMeter 属性jmeterengine.threadstop.wait更改等待时间。时间以毫秒为单位。

Jmeter-Flow Control Action(测试活动)_第1张图片

2、参数说明

  1. Logical Action on Thread
  • Pause 暂停,配合 Duration 一起使用
  • Duration(milliseconds) 延迟时间,单位是毫秒
  • Start Next Thread Loop 开始下个线程循环
  • Go to next loop iteration转到下一个循环迭代
  • Break Current Loop 跳出当前的循环
  1. Logical Action on Thread/Test
  • Stop 停止
  • Stop Now 立即停止
  • Target(Current Thread或All Threads)选择是当前线程还是所有线程,默认当前线程

3、使用说明

添加固定定时器,可以在请求之前加等待时间,如果想在请求之后加等待时间呢?
如果希望在 sampler 执行完之后再等待,则可使用取样器里面的测试活动 (Test Action);

  1. Pause 设置暂停
    有两个请求,a 是注册用户请求,b 是登录的请求。先发 a 请求注册,注册成功后,用同一账号去登录。希望在第一个请求发送之后,设置个等待时间,再发第二个请求。
    Jmeter-Flow Control Action(测试活动)_第2张图片
    登录请求被延迟了2秒中
    在这里插入图片描述
  2. 线程组之间暂停
    Jmeter-Flow Control Action(测试活动)_第3张图片
    运行结果:
    Jmeter-Flow Control Action(测试活动)_第4张图片
    线程组1的注册请求和线程组2的注册请求间隔3秒。
  3. 勾选Start Next Thread Loop(开始开始下一个线程循环)
    Jmeter-Flow Control Action(测试活动)_第5张图片
    只针对第一个注册请求循环 3次,第二个登录请求不执行
    Jmeter-Flow Control Action(测试活动)_第6张图片

结果如下:
Jmeter-Flow Control Action(测试活动)_第7张图片

  1. 勾选Go To Next iteration of current Loop(转到当前循环的下一次迭代)
    跟 Start Next Thread Loop 开始下个线程循环差不多

  2. 勾选Break Current Loop(跳出当前循环)
    Jmeter-Flow Control Action(测试活动)_第8张图片
    只有第一次循环执行成功
    Jmeter-Flow Control Action(测试活动)_第9张图片
    运行结果:
    Jmeter-Flow Control Action(测试活动)_第10张图片

  3. Stop(Current Thread)
    Jmeter-Flow Control Action(测试活动)_第11张图片
    运行结果:
    Jmeter-Flow Control Action(测试活动)_第12张图片
    当前线程组运行一次后停止

  4. Stop(All Threads)
    Jmeter-Flow Control Action(测试活动)_第13张图片
    运行结果:
    Jmeter-Flow Control Action(测试活动)_第14张图片

你可能感兴趣的:(Jmeter,Jmeter,测试工程师,性能场景,接口测试)