Jmeter数据库JDBC测试

Jmeter数据库测试常用的主要有2个场景:1.造数,即 SQL Query 为update ;2.提取数据,即 SQL Query 为select 。

先就这2个进行说明,后续补充其他应用场景。

 

准备工作:

1.Jmeter下载安装完毕后,更新获取jmeter插件管理器的jar包 jmter plugins:

https://jmeter-plugins.org/install/Install/

2.更新所需要的监控组件,下载地址https://download.csdn.net/download/qq_34195282/12740188

配置数据库连接信息:

3.创建JDBC Connection Configuration,配置信息

Variable Name for created pool: 设置数据库连接的名称,需唯一,跟每个sampler的jdbc请求池的名称: Variable Name Bound to Pool  字段一致。所以如果有多个jdbc数据库请求时,建议把 JDBC Connection Configuration 放到 JDBC Request 下面。

Validation Query :

The list of the validation queries can be configured with jdbc.config.check.query property and are by default:

hsqldbselect 1 from INFORMATION_SCHEMA.SYSTEM_USERSOracleselect 1 from dual
DB2select 1 from sysibm.sysdummy1MySQL or MariaDBselect 1
Microsoft SQL Server (MS JDBC driver)select 1PostgreSQLselect 1
Ingresselect 1Derbyvalues 1
H2select 1Firebirdselect 1 from rdb$database
Exasolselect 1  

Database URL :

JDBC Driver class:

Connection Properties:(非必填项)

设置连接时的必要的属性,如oracle需设置:internal_logon=sysdba

 

其他字段的说明,可参照Jmeter的组件文档:

https://jmeter.apache.org/usermanual/component_reference.html#JDBC_Connection_Configuration

 

发起JDBC请求:

4.创建JDBC Request

Variable Name Bound to Pool:jdbc请求池的变量名称,跟 JDBC Connection Configuration,配置信息的 Variable Name for created pool 字段一致。

Query Type:

Select Statement
Update Statement - use this for Inserts and Deletes as well
Callable Statement
Prepared Select Statement   ---- 带参数化的查询
Prepared Update Statement - use this for Inserts and Deletes as well  ---- 带参数化的增删改操作
Commit
Rollback
Autocommit(false)
Autocommit(true)
Edit - this should be a variable reference that evaluates to one of the above

举个例子:

insert into students (name,age,gender,cls_id,birth,arts_or_sciences,height,weight) values (?,?,1,?,?,"sciences",?,?) ;

需要参数化的,用 ? 替代。

在下面的 Parameter values 字段,维护变量。也可以手动输入,组件文档有示例:https://jmeter.apache.org/usermanual/component_reference.html#JDBC_Request

我是自定义了用户参数,如图:

Parameter types:

参数类型,一般默认有以下几种:INTEGER, DATE, VARCHAR, DOUBLE   (大小写都可以)

java写变量一般用int,在这里是不支持的,varchar(30) 这种格式也不支持,请参照jmeter的组件文档写。

Variable Names:

select 方式的查询结果,可以把返回的结果的列字段数据,在这里设置变量名称。返回值用作其他关联请求的value。

Result Variable Name:

如果指定,这将创建一个包含行映射列表的对象变量。 每个映射包含列名作为键,列数据作为值。用法:

columnValue = vars.getObject("resultObject").get(0).get("Column Name");

其他字段的说明,可参照Jmeter的组件文档:

https://jmeter.apache.org/usermanual/component_reference.html#JDBC_Request

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值