学习笔记jmeter之直连数据库(3)

组件位置:测试计划--配置元件--JDBC Connection Configuration(数据库配置连接池)

                  测试计划--线程组--取样器--JDBC Request

直连数据库:让jmeter直接连接数据库。

之前是通过接口操作数据库,可能出现的问题: 比如查询可能有漏查误查的情况,解决方案是人工比对,效率低且有安全隐患,解决方案:让程序代替人工

基本思路:
1、连接数据库
  1) 添加-数据库驱动
  2) 添加-JDBC Connection Configuration(数据库配置连接池)
2、发送sql语句请求进行增删改查
  1) 添加-线程组
  2) 添加-JDBC Request(写sql语句)
3、查看执行sql语句后的数据
  1) 添加-察看结果树 
4、获取执行sql语句后的数据
  1) 添加-Debug Sampler

1、Jmeter 本身不具备直连数据库的功能,整合第三方实现

​     不同的数据库对应不同的 jar 包实现 (就是连接sqlite3、mysql等不同数据库的驱动jar包,如mysql-connector-Java-5.1.35-bin.jar)

测试计划组件,最下方点击浏览添加下载好的jar包:

下载地址MySQL :: Download Connector/J,解压把jar包放到jmeter的extras目录下

2、配置数据库的一些连接信息(JDBC Connection Configuration)

​     variable name: 给当前连接组件命名,请求需要使用 

​     database url   : 数据库路径

​     Driver Class    : 第三程序的启动入口

​     username: 账号   password: 密码 

有点用户自定义变量的意思。把这一串连接的信息放在一个变量里。

3、创建取样器(JDBC Request)连接数据库

​       属性1 :调用的配置的变量名 

​       属性2 :  SQL 语句的类型 

​             select Statement 查询

​            update Statement 修改(增 删 改)

​       属性3:执行的 SQL 语句

    

    会同步删除数据库的数据。不用commit操作。

Query Type:Select Statement、Update Statement
    1) Select Statement:查询语句时使用
    2) Update Statement:(新增、更新、删除)语句时使用

4、结果再处理

​    就是要将 JDBC 操作的结果取出,并且传递给另外一个取样器

​    1)、JDBC Request 中设置属性 variable names:  变量名

​    2)、JDBC Requst 操作数据库时,会将查询的结果赋值给步骤1设置的变量

​           赋值规则:由于结果可能有多个,第 N 个结果赋值给  变量名_N

​                变量名_#    表示对应结果个数

​           上述规则是固定格式: 记住

​           怎么查询赋值规则: 添加取样器 Debug(调试) Sampler,可以查看底层实现细节

​    3)、其他取样器使用数据调研格式: ${变量名_N}

   

把查询到的结果列存储到变量depName中。

然后再传递被其他的请求取样器如http请求调用,如把返回结果的第6作为关键字查百度百科相关信息。

(说明:变量名_序号,表示是第几个,jmeter自行把查询结果进行规整,这是内置的取样规则。直接写变量的话,就是把所有返回结果都查一遍。)

debug sampler:不用设置,直接新增取样器,运行后在结果树的响应数据中即可查看查询规则的执行过程。把查询的结果按顺序存放了。

总结:
1. JDBC驱动包
2. 数据库连接池配置
3. JDBC请求
4. Degbeg Sampler 

mysql和Oracle的JDBC连接配置:

         

上图的database URL:   固定前缀:ip:port/数据库名称

测试计划那里需要加载不同的jar驱动包。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值