一 前言:
环境:
window 10 , Jmeter 5.3
简单介绍下如何读取数据库中同个字段的多个值,并让该字段的多个值作为后面接口的请求参数
读取mysql数据并参数化
把前面数据库连接的例子拿来稍微改造下
场景要求:
如上,从数据库中查询出符合要求的age和name字段的数据,age和name的值都会作为后面接口请求的参数,也就是说数据库查询出多少条数据,接口就会请求多少次且每次请求的字段值是不同的
回忆之前数据库连接的例子,其中也用到了mysql中查询出来的数据,如下
可以看到,数据库查询出来的参数是写死了的,只会使用查询出来的字段的第一个值且只会请求一次
现在却是请求次数是未知的(根据数据库查询结果来定),请求值每次都不同,所以之前那种写死的方法不能用了
例子
现在我们要多用到Jmeter的两个组件,循环控制器和计数器
如下,我们在线程组3中进行改造来实现需求
注意 计数器和后面的接口都是在循环控制器的子节点
上面使用到的v函数 用函数助手实现如下
运行 查看结果树
如上可见,bin3接口执行了3次,其它接口只执行了一次,因为bin3接口在循环控制器下回循环执行
bin3接口的请求参数的age字段值每次都不同,list中的参数由于写死了每次使用的都是查询出来的第一个值
总结:
循环控制器:会控制其子节点的循环次数
计数器:给定初始值 和最终值,从初始值开始每次累加一个设定的数并赋值给指定的变量