JMeter 系列之—-02 创建数据库测试计划

时间:2023-11-23 11:08:14

Jmeter创建数据库测试计划,包括如下步骤:

1. 添加数据库jar包

使用不同的数据库,要引入不同的jar包。主要有两种方式:

方式1:直接将jar包复制到jmeter的lib目录

方式2:通过测试计划 
Jmeter的测试计划可以引入相应的jar包 
JMeter 系列之—-02 创建数据库测试计划

2. JDBC Connection Configuration

DatabaseURL:jdbc:mysql://localhost:3306/apiauto?useSSL=false&allowMultQueries=true

Driver:com.mysql.jdbc.Driver

【注】

高版本的mysql中默认要求使用ssl连接来访问数据库,即在jdbc url中加入useSSL参数(参数值可以为false,true)

3. JDBC Request

  这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作。需要和JDBC Connection Configuration配置原件(配置数据库连接的相关属性,如连接名、密码等)一起使用。

sql语句中的占位符?, 通过Paramter values 赋值 和 Paramter types 指定值的类型。

JDBC Request 参数说明:

Variable Name:  数据库连接池的名字,需要与JDBC Connection Configuration的Variable 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语句返回的结果

JMeter 系列之—-02 创建数据库测试计划

3.1 Parameter valus:    参数值

3.2 Parameter types:    参数类型,

可参考:Javadoc for java.sql.Types

3.3 Variable 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}...来获取相应的值。

3.4.Result variable name 的使用

如果给这个参数设置值,它会创建一个对象变量,保存所有返回的结果,

获取具体值的方法:columnValue = vars.getObject(“resultObject”).get(0).get(“Column Name”)

完成