Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库

一、jar包引入

连接Mysql数据库所需jar包:mysql-connector-java-5.1.48-bin.jar
jar包下载地址:mysql-connector-java-5.1.48-bin.jar下载
引入方式有如下两种,推荐第一种方式:
方式一:将jar包放到Jmeter安装目录lib文件夹下(推荐此方法)
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库
方法二:执行测试计划–>Add directory or jar to classpath–>浏览,选择jar包后上传
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库

二、JDBC Connection Configuration

1、添加JDBC Connection Configuration配置元件

添加–>配置元件–>JDBC Connection Configuration
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库

2、配置JDBC Connection Configuration

可以添加多个,用以连接不同的数据库,通过Variable Name变量名进行区分。
通常设置如下几个比较重要的参数项:
Variable Name:数据库连接池的名称,自己定义,后面JDBC Request通过这里设置的名称连接到具体的数据库;
Database URL:数据库的url,mysql数据库格式:jdbc:mysql://IP地址:mysql监听的端口号/数据库名称?useUnicode=true&characterEncoding=utf8
如jdbc:mysql://127.0.0.1:3306/xhyname?useUnicode=true&characterEncoding=utf8
JDBC Driver class:JDBC的驱动,以Mysql为例,此处选择com.mysql.jdbc.Driver
Username:连接数据库的用户名
Password:连接数据库的密码
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库
常见的几种类型的数据库所需驱动、以及DatabaseURL书写方式:

数据库类型 Driver Class Database URL
Mysql com.mysql.jdbc.Driver jdbc://mysql://host:port/dbname
SqlServer com.microsoft.sqlserver.jdbc.SQLServerDriver jdbc:sqlserver://host:port;DatabaseName=dbname
Oracle oracle.jdbc.OracleDriver jdbc:oracle:thin:@//host:port/service OR jdbc:oracle:thin:@(description=(address=(host={mc-name})(protocol=tcp)(port={port-no}))(connect_data=(sid={sid})))

三、JDBC Request

1、添加JDBC Request

添加–>Sample–>JDBC Request
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库

2、配置JDBC Request

Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库
Variable Name:数据库连接池的名称,与上面要调用的JDBC Connection Configuration设置的VariableName保持一致;
Query Type:与数据库交互的请求类型;
Query:填写要执行的sql语句;

常用的几中Query Type
Select statement:查询语句类型(select命令),只支持一条查询语句,如果Query中内容为一条查询语句,则选择此类型;
Update statement:更新语句类型(insert和update命令),只支持一条更新语句,如果Query中为一条更新语句则选择此类型;
Prepared select statement:相当于JDBC的存储过程,可用于多条查询语句执行;
Prepared update statement:多条更新语句执行;
Callable statement:调用存储过程时选择这个类型。

Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库
Parameter values:参数值,与Parameter types一一对应,成对出现;
Parameter types:参数类型,与Parameter values一一对应,成对出现;
Variable names:变量名称,用于存放查询操作返回的查询结果,当有多个字段时用逗号隔开,引用方式${变量名};
Result variable name:用户存放查询操作返回的查询结果集;
Query timeout:查询超时时间;
Handle ResultSet:定义如何由callable statements(存储过程)语句返回的结果。

3、执行JDBC Request

点击启动,设置好查看结果树,即可查看请求以及响应数据。
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库

四、问题解决

Cannot load JDBC driver class ‘com.mysql.jdbc.Driver’
原因:未引入mysql-connector-java-5.1.48-bin.jar包。
解决方法:将jar包引入或者放到Jmeter安装目录/lib文件夹下,重启Jmeter即可。
Jmeter中使用JDBC Connection Configuration、JDBC Request操作mysql数据库