一、If Controller概述

Expression (must evaluate to true or false) :表达式(值必须是true或false),也就是说,在右边文本框中输入的条件值必须是true 或 false,(默认情况下)

Interpret Condition as Variable Expression?:默认勾选项,将条件解释为变量表达式(需要使用__jexl3 or __groovy 表达式,可用函数助手生成)

Evaluate for all children?:条件作用于每个子项(即意味着它的每个子元素在运行前都会运行一次 if 控制器里面的条件表达式,看看是否还是 true,是的话就可以运行,false 就不运行)

注:

1、文本框上的黄色感叹号,就是提示你,建议采用__jexl3 or __groovy 表达式,以提高性能,也就是默认的方式。

2、if 控制器 只能作用于其下的子项

二、If Controller的实例运用

(一)直接输入条件

  如图,去掉 “Interpret Condition as Variable Expression?” 前面复选框,直接输入条件 1==1。if控制器里面的“按编号筛选列表-2106000014”的取样器将被执行。

  

  执行结果如下图:

(二)默认用法,采用__jexl3 or __groovy 表达式

案例描述

添加自定义的变量值,利用ForEach Controller进行读取此变量值,然后将读取的变量值保存到设定的变量中;当变量取值符合IF Controller中设定的条件时,则执行其下的业务请求并监控

业务说明:

以“版单管理列表”接口为例

> 添加用户定义的变量code(3个:2106000007,2106000008,2106000009)

> 用ForEach控制器读取变量codelike

> 接口入参prototypeCodeLike使用此变量值

> if控制器中判断codelike等于2106000007时,执行控制器下面的取样器

操作步骤:

1、目录结构

2、用户定义的变量

  ForEach根据输入变量前缀来循环遍历,格式满足{aa_1,aa_2,aa_3}的格式,注意 变量后是以_带数字分隔的

3、ForEach控制器

4、在ForEach Controller下添加版单管理列表接口取样器

  取样器的请求中配置引用forEach读取的参数 codelike

5、在ForEach Controller之下添加IF Controller,设置判断真假的求值函数  

  ${__groovy(${codelike}==2106000007,)} 表示ForEach Controller中读取的变量值为"2106000007"时,才会执行IF Controller之下的请求

6、执行结果

  【版料管理列表-${codelike}】接口取样器,执行满足forEach设定读取添加的所有变量值,当if为true时,则执行if控制器下的取样器【if为true时,执行版单管理列表-${codelike}】,所以最终执行结果如图

(三)Evaluate for all children? 的用法

  勾选了之后意味着它的每个子元素在运行前都会运行一次 if 控制器里面的条件表达式,看看是否还是 true,是的话就可以运行,false 就不运行。演示如下:

1、勾选上,使条件作用于每个子项

2、添加JSR223 后置处理器或前置处理器,将code_1的值变为123

3、执行结果

  由于变量code_1的值变了,导致不符合if条件${__groovy(${codelike}==2106000007,)},所以便不会执行if控制器下的【版单管理列表-应用于所有子项】取样器

  附上去掉勾选的执行结果

Jmeter-逻辑控制器If Controller的实例运用的更多相关文章

  1. jmeter 逻辑控制器Logic Controller详解

    Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in w ...

  2. Jmeter逻辑控制器-ForEach Controller

    ForEach Controller 介绍 ForEach Contoller 即循环控制器,顾名思义是定义一个规则.主要有以下一个参数: 名称:随便填写 注释:随便填写 输入变量前缀:可以在&quo ...

  3. Jmeter之逻辑控制器(Logic Controller)

    Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in w ...

  4. Jmeter之逻辑控制器(Logic Controller)【转】

    Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in w ...

  5. (四)Jmeter之逻辑控制器(Logic Controller)

    Jmeter之逻辑控制器(Logic Controller) 前言: 1. Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in w ...

  6. 【JMeter_16】JMeter逻辑控制器__随机控制器<Random Controller>

    随机控制器<Random Controller> 业务逻辑: 当每次执行到该逻辑控制器时,随机挑选控制器下的任意一个子节点<取样器.逻辑控制器> Ignore sub-cont ...

  7. 【JMeter_17】JMeter逻辑控制器__随机顺序控制器<Random Order Controller>

    随机顺序控制器<Random Order Controller> 业务逻辑: 当控制器被触发时,将控制器下的所有子节点顺序打乱执行一遍,执行一遍,执行一遍,不是执行一个. 注意:是将子节点 ...

  8. Jmeter(九) - 从入门到精通 - JMeter逻辑控制器 - 上篇(详解教程)

    1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...

  9. Jmeter(十) - 从入门到精通 - JMeter逻辑控制器 - 中篇(详解教程)

    1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...

  10. Jmeter(十一) - 从入门到精通 - JMeter逻辑控制器 - 下篇(详解教程)

    1.简介 Jmeter官网对逻辑控制器的解释是:“Logic Controllers determine the order in which Samplers are processed.”. 意思 ...

随机推荐

  1. POJ2688状态压缩(可以+DFS剪枝)

    题意:       给你一个n*m的格子,然后给你一个起点,让你遍历所有的垃圾,就是终点不唯一,问你最小路径是多少? 思路:       水题,方法比较多,最省事的就是直接就一个BFS状态压缩暴搜就行 ...

  2. Python脚本破解图形验证码(tesserocr和pytesseract)

    在学习之前,我们先了解OCR.tesseract.tesserocr.pytesseract和opencv这几个跟图片处理有关的库. OCR(Optical Character Recognition ...

  3. Windows核心编程笔记之内核对象

    0x01 子进程继承父进程内核对象句柄 父进程 #include <Windows.h> #include <iostream> #include <strsafe.h& ...

  4. windows-API劫持(API-HOOK)

    API Hook ApiHook又叫做API劫持,也就是如果A程序调用了B.cll里面的C函数,我们可以做到当A调用C函数执行的时候,直接执行我们自己事先准备好的函数,之后我们在执行真正的C,当然我们 ...

  5. QFNU-11.08training

    7-1  阅览室 题目: 天梯图书阅览室请你编写一个简单的图书借阅统计程序.当读者借书时,管理员输入书号并按下S键,程序开始计时:当读者还书时,管理员输入书号并按下E键,程序结束计时.书号为不超过10 ...

  6. linux跨文件复制粘贴

    跨文件是这样的: 复制a.txt的第20行至第30行到b.txt中vi a.txt:2010yy:e b.txtp

  7. MzzTxx——博客目录

    准备阶段 团队介绍 需求分析 技术规格说明书 功能规格说明书 Alpha 阶段任务分配 团队贡献分分配方案 Scrum Meeting Alpha 2021.04.21 Scrum Meeting 0 ...

  8. spring总结归纳

    愿历尽千帆,归来仍是少年 简介 spring: 1.是分层的full-stack(全栈)轻量级开源框架.2. 内核:IOC和AOP.3.提供web层springMvc和业务层事务管理,整合众多的开源框 ...

  9. istio部署问题Q&A

    端口绑定无权限 创建Gateway,提示绑定端口无权限. 2020-12-27T12:25:30.974288Z warning envoy config gRPC config for type.g ...

  10. [bug] 安装MySQL8.0.15 失败,提示This application requires Visual Studio 2015 x64 Redistributable

    参考 https://blog.csdn.net/weixin_44092289/article/details/88045666