Jmeter之JDBC类型组件
一、背景
在测试过程中,避免不了与数据库打交道,比如数据的校验、数据的准备或者重置操作,又或者对数据库进行增删改查,基于以上诉求,在Jmeter中是如何实现的呢。可使用JDBC类型组件来实现以上功能操作。
二、JDBC类型组件介绍
在Jmeter中,JDBC类型组件有四种
1、JDBC配置元件,属于执行JDBC的必选组件,运行在请求之前,用来做数据库准备相关的工作,如配置连接数据等
2、JDBC前置处理器,运行在请求之前,一般用来做数据准备相关的操作。
3、JDBC Sample,和其他协议的请求是一个级别的,主要用于sql语句测试等操作
4、JDBC后置处理器,注意用于测试结果的校验或者还原数据等操作
JDBC组件使用步骤
1、首先需要将数据库对应的JDBC驱动jar下载放到lib目录下,驱动jar到对应的数据库官网下载即可
2、添加JDBC配置元件---JDBC Connection Configuration组件,用于完成相关的配置工作

常见属性:
Variable Name for created pool,变量名称,用来定义JDBC连接配置的配置名,供后续JDBC请求使用
Connection Pool Configuration:JDBC连接池配置,如果是执行和性能无关的数据操作,则该配置不用做任何变更,但如果是性能测试相关,则要求和中间件的数据库连接池配置保持一致
Database Connection Configuration:数据连接配置(可以参考官方文档进行配置),已mysql为例
database URL :jdbc:mysql://host[:port]/dbname,注意默认情况mysql的端口为3306,Oracle的端口为1521,dbname库名称
如何想一次执行多个语句该如何操作呢?
allowMultiQueries=true,允许混合查询,即一次执行多条sql语句
useUnicode=true&characterEncoding=utf8指定字符编码,解决乱码问题
database URL 更改为jdbc:mysql://host[:port]/dbname?allowMultiQueries=true即可
JDBC Driver class:com.mysql.jdbc.Driver
Usename:数据库用户名
Password:数据库用户名密码
PS:注意权限问题
3、添加对应的JDBC类型组件
根据具体业务需求,添加对应的JDBC 请求(前置、后置)组件

JDBC 请求(前置、后置)组件属性解析:
Variable Name of Pool declare in JDBC Connection Configuration:该处填写的是第二步骤中配置JDBC连接配置组件所定义的连接变量名
SQL Query:要执行的SQL配置,
Query Type:请求类型,类型和要执行的SQL语句匹配
Parameter Values:这个针对Prepared类型的query操作,用来给SQL语句中的问号(?)传值的,如果用多个值,值与值之前使用逗号分隔,该出key实现参数化
PS:带问号的SQL语句预编译SQL语句,执行时将?替换为相应的值,这样效率高且防止SQL注入
Parameter types:用来指定参数的类型,类型、顺序和个数要求和实际的参数保持一致
PS:参数类型一般有,Varchar Integer Double
Variable names:变量名称,是用来存储从数据库中所查询的值,一个变量对应存储查询结果中的一列值,是按顺序一一对应的,即第N个变量对应第N列值,变量之间使用逗号分隔
PS:存储的时候采用的是数组的方式,而且会生出一个隐藏的变量:变量名_#=值的个数,#表示第几行的值
Jmeter之JDBC类型组件的更多相关文章
- jmeter之JDBC类组件
~什么是JDBC?:全称名为Java DataBase Connectivity,(java数据库连接),在jmeter中是一种可以远程操作数据库的一类组件. ~jmeter如何操作数据库?:jmet ...
- Jmeter之JDBC Request使用方法(oracle)
JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...
- Jmeter 中JDBC request 详解 !
JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...
- Jmeter中JDBC Request和BeanShell PostProcessor的结合使用(SQL模糊查询)
[前言] 今天记录一下Jmeter中JDBC Request和BeanShell PostProcessor的结合使用的方法(SQL模糊查询) [步骤] 1.下载对应数据库的驱动包到jmeter安装目 ...
- JMeter处理jdbc请求后的响应结果
JMeter如果进行JDBC请求,请求后的响应结果如何给下一个请求用(也就是传说中的关联),于是研究了一下,下面将学习的成果做个记录: 1.添加 "JDBC Connection Confi ...
- Jmeter发送JDBC请求
下午花了两个小时研究了一下Jmeter发送JDBC请求,现在把基本操作流程分享一下. 做JDBC请求,首先需要两个jar包:mysql驱动-mysql-connector-java-5.1.13-bi ...
- MyBatis之Mapper XML 文件详解(四)-JDBC 类型和嵌套查询
支持的 JDBC 类型为了未来的参考,MyBatis 通过包含的 jdbcType 枚举型,支持下面的 JDBC 类型. BITFLOATCHARTIMESTAMPOTHERUNDEFINEDTINY ...
- jmeter使用JDBC连接数据库
jmeter使用JDBC的配置元件连接数据库,通过sql语句查询需用到的数据 配置元件名称:JDBC connection configuration,使用前,需导入mysql-connector-j ...
- jmeter使用jdbc获取注册验证码进行注册
自动化工具测试注册功能时,往往会遇到验证码,这个烦人的验证码怎么能够解决掉呢? 通常有两种方法 让开发禁用注册码,或在测试环境写个固定的验证码 在jmeter中用 jdbc获取数据库中验证码 今天通过 ...
随机推荐
- 030 Android 第三方开源下拉框:NiceSpinner的使用+自定义Button样式+shape绘制控件背景图+图片选择器(selector)
1.NiceSpinner下拉框控件介绍 Android原生的下拉框Spinner基本上可以满足Android开发对于下拉选项的设计需求,但现在越来越流行的下拉框不满足于Android原生提供的下拉框 ...
- 实现不同分辨率、不同浏览器下高度自适应、iframe高度自适应
html: <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <tit ...
- flex左右布局 左边固定 右侧自适应
flex左右布局 左边固定 右侧自适应 想要保证自适应内容不超出容器怎么办. 通过为自适应的一侧设置width: 0;或者overflow: hidden;解决. 首先实现标题的布局,也很简单: &l ...
- 15. Scala并发编程模型Akka
15.1 Akka介绍 1) Akka是Java虚拟机JVM平台上构建高并发.分布式和容错应用的工具包和运行时,可以理解成Akka是编写并发程序的框架 2) Akka用Scala语言写成,同时提供了S ...
- H5中表格的用法
1.表格的基本结构: 表格由行和列组成,单元格式表格的最基本单元;每个表格均有若干行,行标签由<tr></tr>定义,每行被分割为若干单元格,由<td></t ...
- AS3.0 位图翻转、旋转
/* * * *-------------------------* * | *** 位图翻转.旋转 *** | * *-------------------------* * * 作 者:fengz ...
- IDEA好用插件推荐
Maven Helper:排查maven依赖冲突神器,强力推荐! Alibaba Java Coding Guidelines:阿里巴巴编程规范 CamelCase:驼峰命名工具,SHIFT + AL ...
- 在论坛中出现的比较难的sql问题:13(循环替换问题 过滤各种标点符号)
原文:在论坛中出现的比较难的sql问题:13(循环替换问题 过滤各种标点符号) 所以,觉得有必要记录下来,这样以后再次碰到这类问题,也能从中获取解答的思路. 去掉一个字段中的标点符号的SQL语句怎么写 ...
- Asp.Net Mvc Area二级域名
参考:https://blog.maartenballiauw.be/post/2009/05/20/aspnet-mvc-domain-routing.html 参考:https://www.cnb ...
- Python之Flask
一.Flask是一个使用 Python 编写的轻量级 Web 应用框架.其 WSGI 工具箱采用 Werkzeug ,模板引擎则使用 Jinja2 .Flask使用 BSD 授权. Flask是一个轻 ...