概述
jmeter 逻辑控制器
***************
逻辑控制器
************
if 控制器
作用:通过条件判断控制器下的元件是否运行
参数说明:
参数名称:可随意设置
注释:可随意设置,也可不设
expression:判断表达式
勾选interpret condition as variable expression:${__javascript(8==8)}
使用用户自定义变量:${var}==8
evaluate for all children:勾选后执行所有子节点前都进行判断
不勾选,则只在执行controller时判断一次
************
事务控制器
作用:将控制器下所有元件执行时间累加,控制器下所有取样器运行成功后,控制器才算成功
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
generate parent sample:是否生成父统计样本,勾选后生成
include duration timer ...:是否包含计时器延时,勾选后在所有请求前后添加延时(不是每个请求前后)
************
循环控制器
作用:控制元件执行次数
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
永远:勾选后,永久执行
循环次数:输入数字后,执行指定次数
************
while 控制器
作用:通过条件判断是否循环执行元件
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
condition:循环判断条件
如:预先设置自定义用户变量var,判断条件${var}<10
************
foeach 控制器
作用:循环遍历变量,当作控制器下的元件入参
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
输入变量前缀:自定义的变量前缀
开始循环字段(不包含):变量数字后缀(不包含)
结束循环字段(含):变量数字后缀(含)
输出变量名称:如out,表示out=***(变量值)
数字之前加上下划线:自定义的变量前缀与数字后缀是否用"_"间隔
************
include 控制器
作用:引入测试片段,只能是简单控制器及其下的元件
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
文件名:测试片段所在文件路径
************
runtime 控制器
作用:控制子元件执行时间,单位为秒
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
runtime:默认为1s,如果设置为0,则其下元件不执行
************
临界部分控制器
作用:并发测试时,确保请求顺序执行
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
锁名称:默认为global_lock
************
交替控制器
作用:控制器下的元件交替执行(每次循环时只执行其中的一个)
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
忽略子控制器块:如果勾选,则交替控制器下的嵌套的控制器失效,其下的元件直接作为交替控制器的子元件
interleave across threads:多线程并发时也保持交替执行
************
仅一次控制器
作用:其下元件仅执行一次
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
************
录制控制器
作用:脚本录制时,可将脚本存放在录制控制器下
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
clear all recorded samples:清除节点下所有录制的脚本
************
简单控制器
作用:定义执行单元,可被include controller导入
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
************
随机控制器
作用:控制器下的元件随机执行
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
忽略子控制块:如果勾选,则其下嵌套的控制器失效,嵌套控制器的子元件直接作为随机控制器的子元件
************
随机顺序控制器
作用:控制器下的元件执行顺序随机,但都会执行(区别于顺序控制器)
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
************
吞吐量控制器
作用:控制元件执行次数
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
based on:可选值percent executions、total executions
per user:是否针对每个线程进行吞吐量控制
# 元件执行次数:线程数n、线程循环次数m、循环控制器循环次数k(如果设置了循环控制器),throughput=q
percent executions元件执行次数:n*m*k * q%,per user是否勾选无影响
total executions元件执行次数:
勾选per user:n*min(m*k, q)
不勾选per user:min(n*m*k, q)
************
switch 控制器
作用:根据value选择执行控制器下的元件
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
switch value:value可为数字、字符
数字:控制器下的请求从0开始编号,如果value超过最大值,则执行编号为0的请求
字符:请求name,大小写敏感,匹配则执行,否则执行default请求,没有default则不执行
************
模块控制器
作用:引入当前测试计划的测试片段
参数说明:
名称:控制器名称,可随意设置
注释:控制器注释,可不设置
module to run:选择引入的模块
***************
示例:foreach 控制器
设置用户自定义变量
线程组 ==》foreach 控制器
线程组 ==》foreach 控制器 ==》调试取样器
线程组 ==》foreach 控制器 ==》查看结果树,点击运行后,查看运行结果
***************
示例:吞吐量控制器
线程组设置:线程数2、循环次数2
循环控制器:循环次数为4
吞吐量控制器 1:percent executions、50、per user,调试取样器总共执行8次
吞吐量控制器 2:percent executions、50,调试取样器总共执行8次
吞吐量控制器 3:total executions、2、per user,调试取样器总共执行4次
吞吐量控制器4:total executions、2,调试取样器总共执行2次
最后
以上就是健康绿茶为你收集整理的jmeter 逻辑控制器的全部内容,希望文章能够帮你解决jmeter 逻辑控制器所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复