Jmeter中的如果(If)控制器

本文指导如何利用JMeter工具实现通过城市名称获取天气信息的功能,包括添加线程组、WebService请求、正则表达式匹配、IF控制器条件判断及HTTP信息头管理器配置等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、添加线程组(测试计划右键添加-》Threads-》线程组)


 2、添加WebService(SOAP) Request (DEPRECATED)(如果在菜单中找不到,请到jmeter.properties下将not_in_menu=后的webservice的删掉保存在重启jmeter

 

 

3、输入内容


 4、添加正则表达式并添加内容


  5、添加IF控制器并输入条件判断,如果符合就执行里面的内容,现在我想如果cityName是武汉就显示出武汉的天气

6、现在用另外一种方法通过cityNAME获取天气信息,右键“如果if控制器”添加HTTP信息头管理器


 7、右键“如果if控制器”SOAP/XML-RPC Request,并进行设置


 

 

8、运行


 

转载于:https://www.cnblogs.com/cyt456/p/4173828.html

### JMeterIF 控制器的使用方法 #### 创建 IF 控制器 为了在 JMeter 测试计划中加入条件逻辑,可以通过添加 **IF 控制器** 来实现特定条件下执行某些采样器或其他组件的功能。创建 IF 控制器的方法是在线程组内选择要放置控制器的位置,右键点击并依次选择 `添加` -> `逻辑控制器` -> `如果 (If) 控制器`。 #### 设置条件表达式 IF 控制器的核心在于其内部定义的条件表达式。此表达式的编写需遵循一定的语法结构以便被解释为布尔值 true 或 false。推荐采用 `${__jexl3()}` 函数来构建这些表达式[^1]。例如: ```plaintext ${__jexl3("${JMeterThread.last_sample_ok}")} ``` 上述例子用于检测最近一次取样的状态是否成功;当返回的结果为真时,则会触发 IF 控制器内的子元素被执行。 对于更复杂的多条件组合情况,同样可以利用逻辑运算符完成。如下所示的是一个复合条件的例子,它表示变量 COUNT 小于 10 并且 VAR 的字符串等于 "abcd": ```plaintext ${__jexl3(${COUNT} < 10 && "${VAR}" == "abcd")} ``` 值得注意的是,所有位于同一级别上的其他非受控元件不会受到当前 IF 控制器的影响,只有那些作为 IF 子节点存在的项目才会依据设定好的规则进行处理[^2]。 #### 实际应用案例 假设有一个场景需要模拟不同比例的操作频率,比如每五个请求中有三个做读操作而两个写入数据。此时就可以借助多个 IF 控制器配合计数器或者随机函数达成目标。具体做法可能涉及设置不同的分支路径,并通过相应的条件判断引导流量走向指定的服务端点[^3]。 另外一种常见用途是用来验证前置动作的成功与否再决定后续流程如何继续下去。像上面提到过的那样,检查最后一步是否顺利完成能够帮助确保整个事务链路正常运作[^4]。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值