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

相关推荐
小张同学zkf14 小时前
【测试】基于博客系统的测试报告
python·功能测试·压力测试·测试
测试老哥2 天前
Jmeter自动化性能测试常见问题汇总
自动化测试·软件测试·测试工具·jmeter·接口测试·压力测试·性能测试
苦逼IT运维2 天前
Jenkins + SonarQube 从原理到实战四:Jenkins 与 Gerrit 集成并实现自动任务
运维·git·测试工具·ci/cd·jenkins
测试19982 天前
Web自动化测试:测试用例流程设计
自动化测试·软件测试·python·selenium·测试工具·职场和发展·测试用例
秋名山码民2 天前
面试压力测试破解:如何从容应对棘手问题与挑战
面试·职场和发展·压力测试
敬业小码哥3 天前
记一次:postman请求下载文件的使用方法
测试工具·postman
卓码软件测评3 天前
【网站测试:CORS配置错误引发的安全风险及测试】
功能测试·安全·web安全·压力测试·可用性测试·安全性测试
测试老哥4 天前
pytest+requests+allure自动化测试接入Jenkins学习
自动化测试·软件测试·学习·测试工具·职场和发展·jenkins·pytest
Mike_Wuzy4 天前
【音频信号发生器】基本应用
测试工具