【P38】JMeter 随机控制器(Random Controller)


一、随机控制器(Random Controller)参数说明

可以让控制器内部的逻辑随机执行一个,一般用来模拟业务的不确定性;随机控制器在线程迭代或者控制器循环的时候均会触发

选择线程组右键 >>> 添加 >>> 逻辑控制器 >>> 随机控制器(Random Controller)

在这里插入图片描述

  • 忽略子控制器块(Ignore sub-controller blocks):子控制器功能失效,由交替控制器代替

二、测试计划设计

2.1、测试计划一

(1)、测试计划右键 <<< 添加 <<< 线程(用户) <<< 线程组

在这里插入图片描述

  • 循环次数:5

  • 其它参数默认即可

(2)、线程组右键 <<< 添加 <<< 逻辑控制器 <<< 随机控制器

(3)、随机控制器右键 <<< 添加 <<< 取样器 <<< 调试取样器,添加三个 调试取样器

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

  • 名称分别为:调试取样器-1、调试取样器-2、调试取样器-3

(4)、线程组右键 <<< 添加 <<< 监听器 <<< 查看结果树

(5)、点击启动,点击查看结果树,查看取样器请求

在这里插入图片描述

如图,线程组迭代5次,每次迭代执行都从三个 调试取样器 中随机取一个 调试取样器 执行

2.2、测试计划二

(1)、测试计划右键 <<< 添加 <<< 线程(用户) <<< 线程组

在这里插入图片描述

  • 参数默认即可

(2)、线程组右键 <<< 添加 <<< 逻辑控制器 <<< 循环控制器

在这里插入图片描述

  • 循环次数:5

(3)、循环控制器右键 <<< 添加 <<< 逻辑控制器 <<< 随机控制器

(4)、随机控制器右键 <<< 添加 <<< 取样器 <<< 调试取样器,添加三个 调试取样器

在这里插入图片描述

  • 名称分别为:调试取样器-1、调试取样器-2、调试取样器-3

(5)、线程组右键 <<< 添加 <<< 监听器 <<< 查看结果树

(6)、点击启动,点击查看结果树,查看取样器请求

在这里插入图片描述

如图,循环控制器 循环执行5次,每次执行都从 随机控制器 中的三个 调试取样器 中随机取一个 调试取样器 执行

2.3、勾选忽略子控制器块

测试计划在 测试计划二 中进行修改验证

(1)、修改 循环控制器,循环次数设置为10000

在这里插入图片描述

(2)、随机控制器右键 <<< 添加 <<< 逻辑控制器 <<< IF 控制器

在这里插入图片描述

true

(3)、IF 控制器右键 <<< 添加 <<< 取样器 <<< 调试取样器,添加两个 调试取样器

在这里插入图片描述

  • 名称分别为:调试取样器-4、调试取样器-5

(4)、线程组右键 <<< 添加 <<< 监听器 <<< 汇总报告

(5)、点击启动,点击汇总报告,查看

在这里插入图片描述

如图,调试取样器-4、调试取样器-5 的样本数和 调试取样器-1、调试取样器-2、调试取样器-3 的样本数几乎差不多

将 IF 控制器 当成一个请求,当随机到 IF 控制器 时,执行 IF 控制器,结果为真,同时执行 IF 控制器 下的 调试取样器-4、调试取样器-5,所以总的样本数会多于10000

(6)、修改 随机控制器,勾选 忽略子控制器块

在这里插入图片描述

  • 勾选 忽略子控制器块

(7)、点击清除全部,点击启动,点击汇总报告,查看

在这里插入图片描述

如图,调试取样器-4、调试取样器-5 的样本数之和,与 调试取样器-1、调试取样器-2、调试取样器-3 的样本数几乎差不多;总体样本数为10000

勾选忽略子控制器块参数,当下面存在其它控制器时,将控制器作为一个单独的请求,每次只执行一个请求

猜你喜欢

转载自blog.csdn.net/qq_45138120/article/details/130914176