目录
前言:
JMeter可以通过JDBC请求实现对数据库的批量增删改查。JDBC请求模拟了一个JDBC请求,它是连接池中的一个虚拟用户。JDBC请求可以定义SQL语句和预编译参数,以执行数据库增删改查操作。
首先需要准备一个数据库驱动Jar包【mysql-connector-java-bin.jar】可以直接百度下载,版本不建议特别低,jar包需要Jmeter引用才能使用,jar包引用如下:
将jar放入Jmeter安装/解压文件路径:eg:D:\apache-jmeter-5.0\apache-jmeter-5.0\lib下,需要重启Jmeter才能生效
驱动包的作用:没有数据库驱动,就不能连接数据库,Jmeter在没有驱动的情况下链接数据库会报:no suitable jdbc driver 错误。
以下是常见的数据库驱动:
汉化Jmeter:打开JMeter解压/安装路径下的文件JMeter.properties,在#language=en下面添加:language=zh_CN保存文件,并重启JMeter。
一、主要配置元件介绍
如图主要元件如下:
-
添加测试计划:各个值直接默认就好,为空的地方也不用填
-
添加线程组:各个值默认,为空的地方也不用填
-
添加JDBC配置文件(JDBC Connection Configuration):
重要字段介绍
名称:设置的是该元件的名称,设置名称后【测试计划】树配置元件也会对应更改
Variable Name Bound to Pool:数据库连接池的名称。可以有多个jdbc connection configuration ,每个可以起不同的名称,在Jmeter其他元件中只要需要用到数据库的连接信息,直接引用该变量的变量名即可。可以理解为如果Jmeter其他的元件要获取数据库的连接信息,可以通过这个名称进行获取。
注意:变量的命名规范:命名要清晰,建议使用英文,便于引用。
Connection Pool Configuration 、 Connection Validation by Pool 这两部分内容不需要更改,使用默认值即可Data base Connection Configuration(以MySQL数据库为例):
Database URL: jdbc:mysql://host[:port]/dbname ——>【数据库地址:jdbc:mysql://数据库主机名或IP地址:端口号/需要使用的库名】JDBC Driver class:com.mysql.jdbc.Driver【其他数据库跟进图一展示进行选择】
Username:数据库名称,即用户名
Password:数据库链接密码
-
添加配JDBC Request 数据库请求
重要字段解释:
名称:同JDBC配置文件。
Variable Name Bound to Pool :引用JDBC Connection Configuration元件里面的参数值【test】写法两边保持一致即可,不需要使用${}进行引用。错误的不存在的参数不能被引用。
Query type:必填,指SQL请求类型。
Select statement:查询语句类型(select),只支持一条查询语句,多条查询语句只执行第一条。
Update statement:更新语句类(insert,update,delete),只支持一条更新语句,多条更新语句只执行第一条。
Prepared Select statement:支持多条查询(select)语句,查询响应数据只展示第一条SQL的查询结果。
Prepared Update statement:支持多条更新(insert,update,delete)语句,响应数