性能测试-Jmeter中IF控制器使用

一、Jmeter控制器

分为两种类型:

  • 控制测试计划执行过程中节点的逻辑执行顺序,如:循环控制器,if控制器等
  • 对测试计划中的脚本进行分组,方便Jmeter统计执行结果以及进行脚本的运行时控制等,如:吞吐量控制器,事务控制器等
    这里我们先学习使用IF控制器
1.IF控制器

条件控制器,通过某个条件控制节点下的元件是否运行,只能作用于其下的子项,条件为假,则节点下请求/元件不执行

定义一个用户变量mode,值为"baidu"

(1)新建if控制器,根据mode的值进行不同的请求。默认是勾选Interpret Condition as Variable Expression?,就要使用到__jexl3 或者 __groovy函数。打开函数助手,把生成的函数字符串拷贝到if控制器中的Expression中就行了

条件为True,请求成功

再添加一个控制器,填写的条件为False,则跳过执行

如果要直接使用表达式,那就需要去掉Interpret Condition as Variable Expression?的勾选

(2)Evaluate for all children的用法

重新定义一个用户变量flag,值为"Y",新建两个if控制器,勾选Evaluate for all children

在请2求的取样器下添加一个JSR233 PostProcessor的后置处理器,作用就是改变变量flag的值

执行测试计划,可以看到,后面一个请求没有执行,是因为请求1执行完之后,flag的值变成N了,不满足第二个if控制器的条件

我们取消勾选Evaluate for all children,可以看到两个请求都请求成功了

(3)Use status of last sample的用法

把第一个请求的请求地址写错,请求失败,请求2也没有请求。

Use status of last sample的作用就是只有当上一个请求成功后,才会执行if控制器下的请求

相关推荐
火云代理1 天前
同一个网站,有的网络能打开、有的打不开?认识 IPv4 与 IPv6 的访问差异
服务器·网络·网络协议·tcp/ip·测试工具·php·状态模式
freejackman5 天前
【工程化】从“单兵作战”到“多引擎架构”:基于门面模式的重构实战
大数据·数据库·hive·sql·测试工具·设计模式·架构
坐吃山猪5 天前
Python22-PostMan调试MCP
测试工具·postman·mcp
guslegend6 天前
Chat / Responses API
压力测试
测试界的小码农6 天前
【 AI Agent 软件测试实战(05):任务规划与状态管理,让 Agent 学会拆解复杂测试任务】
人工智能·测试工具
和粒科技8 天前
热重分析仪TG 309 Libra Classic
测试工具
螺丝钉tina14 天前
[Playwright] [02]常用命令与调试:Debug UI、Mode和 Trace Viewer
开发语言·javascript·测试工具·ui·自动化
梧桐16815 天前
14天、31个缺陷、28个测试脚本—用 Claude Code 完成第三方软件测试
人工智能·测试工具
mewowaBc15 天前
postman使用细则
测试工具·postman·偏差
光影62716 天前
Unittest单元测试基础速记
测试工具·单元测试·json·测试覆盖率