JMeter 连接MYSQL数据库

1.基础使用

步骤1:加入mysql 的驱动包, 有两种方式

  • 方式1

  • 方式2
    直接将jar copy到 JMeter lib/ext目录下 重启JMeter即可

步骤2: 新建 JDBC Connection Configuration

位置:线程组 -> 配置元件 -> JDBC Connection Configuration

步骤3 新建JDBC request:
位置:线程组 -> 添加 -> 取样器 -> JDBC request

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

  Parameter valus:参数值

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

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

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

  Query timeout:查询超时时间

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

步骤4:添加查看结果树和Debug 取样器查看结果

注意:
1.将数据库返回的数据放入到jmeter变量中,在之后引用的时候需要采用${var_number}的形式
2.调试取样器最好放在线程组的最后位置
3.database url: 中的database 可以省略,但是在sql中的表名要采用database.table方式声明表所在的数据库
比如:select * from database.table
当database url 和 sql 中都指定database时 以sql的database为准
4.jdbc:mysql://database:3306/?allowMultiQueries=true : allowMultiQueries表示让mysql可以批量更新

JDBC request 将返回的数据存入money:

jmeter中的变量多了 _1:

2.参数化场景

2.1 用户定义的变量作为参数

定义变量:

SQL用引用变量:


结果:

2.2 "? "占位符 作为参数传递

2.2.1 作为常量传递

query type 必须为: callabled statement

结果:

返回结果说明
email_#=3 :总行数
email_1=15915407513@163.com:第一列,第一行
email_2=123:第一列,第二行
email_3=:第一列,第三行
sex_#=3:总行数
sex_1=0:第一列,第一行
sex_2=2:第一列,第二行
sex_3=0:第一列,第三行
birthday....一样

2.2.1 作为变量传递

3 Query Type 介绍:

https://www.cnblogs.com/imyalost/p/6498029.html

4.Request variable name的使用

作用:将会的数据保存到对象中,可以使用 columnValue = vars.getObject("resultObject").get("rowNumber").get("Column Name")获得值

Debug Sample:

beanshell 后置处理器取值:

输出:

参考了:
https://www.cnblogs.com/puresoul/p/4908014.html

posted @ 2021-12-29 21:50  chuangzhou  阅读(622)  评论(0编辑  收藏  举报