性能测试-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控制器下的请求

相关推荐
测试19987 小时前
Python接口测试之requests库安装和导入
自动化测试·软件测试·python·测试工具·职场和发展·测试用例·接口测试
weixin_440730509 小时前
手工接口测试使用总结
jmeter·接口测试
Amir_zy1 天前
JMeter吞吐量与并发数:要求TPS达到200,并发至少是多少?
jmeter
郭庆汝1 天前
大模型压力测试脚本
压力测试
汽车仪器仪表相关领域1 天前
SIRIUS R1DB/R2DB便携式一体化数据采集系统
大数据·人工智能·功能测试·深度学习·压力测试
祉猷并茂,雯华若锦2 天前
Selenium与Playwright元素定位终极对决
selenium·测试工具
小白学大数据2 天前
长周期爬虫的数据一致性:断点续爬 + 事务回滚保障采集质量
开发语言·爬虫·测试工具
汽车仪器仪表相关领域2 天前
KRYPTON坚固型IP67 EtherCAT总线数据采集模块:工业级分布式采集方案
分布式·功能测试·汽车·压力测试·可用性测试