一、下载对应的JDBC数据库驱动包


mysql的jdbc驱动包:mysql-connector-java-5.1.44-bin.jar;

下载地址:https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.44.zip 解压放到自己想放的位置

jemeter 添加java请求 jmeter如何引入jar_java

二、JMETER导入对应的JDBC数据JAR包

JMeter需要连接数据库,就要导入对应的jdbc驱动jar包。操作步骤如下:

(1)选中【测试计划】,页面最下方【添加目录或jar包到ClassPath】,点击【浏览】;

(2)选择刚刚解压的目录里的mysql数据库的jdbc驱动jar包:mysql-connector-java-5.1.44-bin.jar;

(3)添加完成可看到对应的记录

jemeter 添加java请求 jmeter如何引入jar_bc_02

三、JMeter连接Mysql数据库

(1)选择测试计划-右键添加配置元件-JDBC Connection Configuration

jemeter 添加java请求 jmeter如何引入jar_jemeter 添加java请求_03

(2)填入对应的连接信息:

Variable Name for created pool:变量名,类似服务别名,可自行定义

DataBase URL:格式【jdbc:mysql://数据库地址:端口】,【jdbc:mysql://】是jdbc连接mysql数据库固定前缀

JDBC Driver Class:选择对应的驱动类

Username:用户名

Password:密码

jemeter 添加java请求 jmeter如何引入jar_jemeter 添加java请求_04

四、创建线程组

(1)选中测试计划,右键添加线程组
(2)配置线程组参数

线程数:1

Ramp-Up时间(秒):1

循环次数:1

jemeter 添加java请求 jmeter如何引入jar_java_05

五、创建数据库请求

(1)选择线程组,右键【添加-取样器-jdbc request】

jemeter 添加java请求 jmeter如何引入jar_mysql_06


(3)配置jdbc request的内容

【Variable Name Bound to pool】要与(三)连接数据库时填写的【Variable Name for created pool】变量名一致。

【Query Type】:选择【Select Statement】。当然也可以选择insert、update等,不过我只是为了拿到数据库里的用户数据,用来作为接口测试的入参,所以select查询就足够了。

【Result Variable Name】:查询结果集的变量名;

【Handle ResultSet】:设置查询结果集的处理类型;

jemeter 添加java请求 jmeter如何引入jar_java_07


(4)这时候我们就可以允许一下看是否能查询到我们想要的值了。不过运行之前要先保存下来。

(5)点击允许,则执行线程组,发起jdbc request

(6)通过察看结果树,查看请求结果(6.1)从【取样器结果】我们可以看到jdbc Request请求响应成功

jemeter 添加java请求 jmeter如何引入jar_mysql_08

(6.2)从【请求-Request Body】可以查看请求数据:检查是不是我们写的sql;或者如果之前写的sql是带参数的,这里就可以看到实际发起请求的时候,具体的参数值。

jemeter 添加java请求 jmeter如何引入jar_java_09

(6.3)从【响应数据-Response Body】则可以查看本次请求返回的数据。

jemeter 添加java请求 jmeter如何引入jar_jemeter 添加java请求_10

六、遇到的问题

1、Cannot create PoolableConnectionFactory (Communications link failure

The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.)

此问题是由于没有导入jar包造成的,在测试计划中导入jar包就好了。我是重新再次导入包,选中测试计划再执行就没有出现这个提示了。

2、Response message: java.sql.SQLException: No database selected

此问题是因为JDBC Connection Configuration中Database URL写的不对,一定是要写库名,比如:

jemeter 添加java请求 jmeter如何引入jar_java_11

jemeter 添加java请求 jmeter如何引入jar_数据库_12


因为我连接的库里面有很多数据库,所以这里需要指明连接的数据库。