(三)、Jmeter连接MySQL配置(能执行多条sql语句)

注:有mysqlconnector/j 3.1.1以上版本才支持执行多条sql语句

1.     下载jdbc驱动

为了连接Mysql数据库,还需要有个jdbc驱动:mysql-connector-java-5.1.41-bin.jar

CSDN下载地址: https://download.csdn.net/download/glongljl/10398325

2.     添加jdbc驱动

 打开JMeter,点击测试计划,点击“浏览...”按钮,将你的JDBC驱动添加进来。

3.     添加jdbc connection配置

添加一个线程组,右键点击“线程组”,在下面添加一个“JDBC Connection Configuration”

来配置一下JDBCConnection Configuration页面。

Database URL为MySQL的连接串,如果要执行多条SQL语句,后面还要添加“?allowMultiQueries=true”

JDBC Driver Class是本机的jdbc驱动路径。Mysql数据库,默认com.mysql.jdbc.Driver,不同数据库有不同默认值

4.     添加一个JDBC Request

右键点击“线程组”,在下面添加一个“JDBCrequest”

来配置一下JDBC request页面

如果要执行多条SQL语句,Quer Type一定要选择 Callable statement,使用Callablestatement时,一次可以包含多个SQL,如上图所示。

这里需要注意的是VariableName Bound to Pool同JDBC CONNECTION的一致

·        Variable Name:数据库连接池的名字,需要与JDBC Connection ConfigurationVariable Name Bound Pool名字保持一致

·        Query:填写的sql语句未尾不要加“;”

·        Parameter valus:参数值

·        Parameter types:参数类型,可参考:Javadoc for java.sql.Types

·        Variable names:保存sql语句返回结果的变量名

·        Result variable name:创建一个对象变量,保存所有返回的结果

·        Query timeout:查询超时时间

·        Handle result set:定义如何处理由callable statements语句返回的结果

注: Variables names参数使用方法:

  Jmeter官网给的解释是:如果给这个参数设置了值,它会保存sql语句返回的数据和返回数据的总行数。假如,sql语句返回2行,3列,且variables names设置为A,,C,那么如下变量会被设置为:

  A_#=2 (总行数)

  A_1=第1列, 第1行

  A_2=第1列, 第2行

  C_#=2 (总行数)

  C_1=第3列, 第1行

  C_2=第3列, 第2行

如果返回结果为0,那么A_#和C_#会被设置为0,其它变量不会设置值。

如果第一次返回6行数据,第二次只返回3行数据,那么第一次那多的3行数据变量会被清除。

可以使用${A_#}、${A_1}...来获取相应的值

1、设置保存sql返回结果的变量

2、调用该变量方法,要在原变量的后面加“_1”之类的

5.     添加断言

右键点击线程组---->添加--->断言---->响应断言。

6.     添加一个察看结果树

右键点击线程组---->添加--->监听器---->察看结果树。

启动,在察看结果树检查是否操作成功



7. 常见错误

1. JDBC Request报Error preloading the connection pool错误


原因: jdbcconnection配置最大链接数据太大了


修改为10问题就解决了




     


猜你喜欢

转载自blog.csdn.net/glongljl/article/details/80229680
今日推荐