jmeter提取mysql返回值_jmeter-sql执行之动态参数和提取返回值

在使用jmeter操作mysql的实际工作中,sql的参数不一定就是确定的,就像有时我们需要动态从数据库获取某一个或某几个值,这个时候就需要动态的设置sql语句,那么我们应该怎么搞呢?这就用到了CSV数据文件配置这个插件。下面开始上场景。

首先我们的vault_user表有这些数据

UZfUfy.png 1.png

假设我们的一个接口参数是需要namg和age,那么我们就需要依次获取每行的name和age的值,有两个问题需要解决,第一个是动态设置sql语句,第二个是提取返回的值;在jmeter如何实现呢

打开jmeter,在jmeter新建一个线程组,起名数据库

nUvmyu.png image.png

新建一个配置元件JDBC Connection Configuration

yUBfYn.png image.png

配置好你的mysql数据库,并新建一个 JDBC Request的Sampler,具体的配置可以参考上篇文章,传送门

假设你已经连接上了数据库,我们在JDBC Request写入如下的sql语句

Parameter valus:参数值

Parameter types:参数类型,可参考:Javadoc for java.sql.Types

Variable names:保存sql语句返回结果的变量名

Result variable name:创建一个对象变量,保存所有返回的结果

Query timeout:查询超时时间

Handle result set:定义如何处理由callable statements语句返回的结果

variables names设置为A,,C,那么如下变量会被设置为:

A_#=2 (总行数)

A_1=第1列, 第1行

A_2=第1列, 第2行

C_#=2 (总行数)

C_1=第3列, 第1行

C_2=第3列, 第2行

如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。

如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。

可以使用${A_#}、${A_1}...来获取相应的值

remuMb.png image.png

为了方便观察,新建一个查看结果树和Debug sampler

ZfAbai.png image.png

执行查看结果

Af67nq.png image.png

已经解决了第二个问题,提取sql查询的返回值,那么现在解决第一个sql动态参数

ZRVFB3.png image.png

u6jERn.png image.png

fArEfa.png image.png

在JDBC Request 引入你增加的参数名称

imARbm.png image.png

为了看出效果,更改数据库线程组为6(和文件里一样),并运行脚本

FneEvm.png image.png

yquUju.png image.png

—————————————————————————————————— over

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值