01、连接MQSQL数据库
1、jmeter要连接mysql数据库
首先得下载mysql jdbc驱动包,尽量保证其版本和你的数据库版本一致,至少不低于数据库版本,否则可能有问题。
官网下载地址为:https://dev.mysql.com/downloads/connector/j/
下载之后解压放到本地目录~
(粉丝福利)整理了一些软件测试方面的资料、面试资料(接口自动化、web自动化、app自动化、性能安全、测试开发等),有需要的小伙伴可以文末加入我的学习交流qun,无套路自行领取~
2、准备好驱动包后,需要把jdbc驱动jar包引入测试计划。
点击测试计划-->点击浏览-->选中mysql驱动jar包-->打开,如下图所示:
3、配置JDBC Connection Configuration
在线程组下新建一个JDBC Connection Configuration配置元件,需要用到这个元件来完成数据库的连接,详细配置如下图所示:
这里我们主要关注Variable Name Bound to Pool 和Database Connection Configuration两部分内容,其他字段可以保持默认值
Variable Name:数据库连接池的名称,在JDBC Request中会用到;
Database URL:数据库URL,jdbc:mysql:// IP地址:端口/库名;
JDBC Driver Class:JDBC驱动
Username:数据库用户名;
Password:数据库密码;
4、配置JDBC Requests
上面我们已经完成了对数据库的连接,但要完成对数据库操作的话呢,还需要新建一个取样器JDBC Request
如下图所示:
Query:填写要被执行的SQL语句
Parameter values:参数值
Parameter types:参数类型
Variable names:保存sql语句返回结果的变量名
Result variable name:创建一个对象变量,保存所有返回的结果
Query timeout:查询超时时间
Handle result set:定义如何处理由callable statements语句返回的结果
至此一个最简单的jmeter连接mysql数据库的脚本就基本准备好了,接下来添加一个监听器:察看结果树 ,然后运行脚本即可
结果如下图所示:
02、JDBC REQUESTS参数化
方法(一):
自定义用户变量,然后进行引用
-
在测试计划界面【用户定义的变量】里定义需要的变量
-
在JDBC Request界面SQL Query输入框中以${变量名}的形式引用变量
或者也可以在JDBC Request里添加一个用户定义的变量,点击JDBC Request --> 点击添加,点击配置元件,点击用户定义的变量
然后定义需要的变量,如下图所示
方法(二):
在被执行的SQL语句中使用“?”作为占位符,并传递参数值和参数类型,其中传递的参数值有常量和变量之分。
-
当传递的参数值是常量时
如下图所示,传入的订单号:
-
当传递的值是变量时
如下图中的所示:
至于这里引用Variable names时,为什么在变量名后面加了一个“_1”,是因为查询到的结果是一个列表,所以不管它查询的是一条还是多条数据,都要通过下标去取它的值,写法就是:变量名_下标。
比如:
sql语句返回2行2列,id和named的Variable names设置为A、C,那么要取name为Mike的值,就设置为C_1,取name等于Jame的值,就设置为C_2。