Jmeter-从数据库中获取数据并作为变量传输

今天用到从数据库拿取数据进行使用,所以又重温了一下,顺便记录下来!!

一、添加 JDBC Connection Configuration

1、添加:
Jmeter-从数据库中获取数据并作为变量传输

2、配置:
Database URL:jdbc:mysql://数据库ip/需要连接的库名
JDBC Driver class:com.mysql.jdbc.Driver
Username:连接数据库的账号
Password:密码

Variable Name for created pool:别名,这个根据需要自己取,下面打印内容需要用到
Jmeter-从数据库中获取数据并作为变量传输

二、添加 JDBC Request

1、添加:
Jmeter-从数据库中获取数据并作为变量传输

2、配置:
Jmeter-从数据库中获取数据并作为变量传输
3、添加 调用取样器
Jmeter-从数据库中获取数据并作为变量传输
4、现在就可以在结果数内查看拿取到的数据了
Jmeter-从数据库中获取数据并作为变量传输

三、引用数据 (介绍两种方法)

1、函数:${__V(id_n)} ------------------------- V函数的使用方法

结果数内打印的数据是不是id_1,id_2…
函数中的N是代表一个随机的数字
如果想随机取一个值,可以把N换成随机函数
添加两个 BeanShell 后置处理程序
第一个用来写随机函数,第一个可以用来打印查看是否正确,也能在下面接口请求中使用
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输
查看结果:
Jmeter-从数据库中获取数据并作为变量传输
现在请求中,你就可以使用这个数据了
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输

注:这个写法针对两个值相等时使用,单一也行

如id1 = name1
取出的值,id是name的id,传参时,需要的id和值要是一条数据里的
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输

如果不使用随机,指定的话,不需要添加 BeanShell 后置处理程序, 直接引用数据库打印的信息就就行
Jmeter-从数据库中获取数据并作为变量传输
例如:
${pc_idd_11} 单一引用指定数据

2、循环控制器、计数器

1、添加
线程下添加
Jmeter-从数据库中获取数据并作为变量传输
循环控制器下添加计数器、http请求
Jmeter-从数据库中获取数据并作为变量传输
Jmeter-从数据库中获取数据并作为变量传输
2、配置:
Jmeter-从数据库中获取数据并作为变量传输
计数器:
Jmeter-从数据库中获取数据并作为变量传输

请求配置信息:
Jmeter-从数据库中获取数据并作为变量传输
注:个人感觉,这个方法,使用不舒服…

哪里不清楚,或有更好方法的欢迎留言讨论!!!