jmeter笔记(9)--JDBC Request的使用
JDBC Request可以向数据库发送一个JDBC(Java Data Base Connectivity)请求(sql语句),获取返回的数据库数据进行操作。它需要和JDBC Connection Configuration配置元件一起使用,本次笔记记录JDBC测试MySQL数据库的相关操作。
JDBC Request
1、添加需要的驱动jar包
使用不同的数据库,我们需要引入不同的jar包,驱动包的版本一定要与你数据库的版本匹配,驱动版本低于mysql版本有可能会导致连接失败报错),我这里用的是mysql-connector-java-5.1.45.jar
添加方式1:直接将jar包复制到jmeter的lib目录,重启生效;
添加方式2:使用Jmeter的Test Plan(测试计划)引入相应的jar包。

2、添加配置元件JDBC Connection Configuration

3、填写配置信息

参数说明:
Variable Name:数据库连接池的名称,我们可以有多个jdbc connection configuration,每个可以起个不同的名称,在jdbc request中可以通过这个名称选择合适的连接池进行使用。
Database URL:数据库url,jdbc:mysql://主机ip或者机器名称:mysql监听的端口号/数据库名称, 如:jdbc:mysql://192.168.1.33:3306//test
JDBC Driver class:JDBC驱动,MySQL的驱动为:com.mysql.jdbc.Driver
username:数据库登陆的用户名
passwrod:数据库登陆的密码
4、新建JDBC Request

参数说明:
Variable Name:数据库连接池的名字,需要与JDBC Connection Configuration的Variable Name 名字保持一致 ;
Query:填写的sql语句未尾不要加“;”
Parameter valus:参数值
Parameter types:参数类型,可参考:Javadoc for java.sql.Types
Variable names:保存sql语句返回结果的变量名
Result variable name:创建一个对象变量,保存所有返回的结果
Query timeout:查询超时时间
Handle result set:定义如何处理由callable statements语句返回的结果
执行结果如下:
5、常见错误处理
如果出现报错:“java.sql.SQLException: Value '0000-00-00' can not be represented as java.sql.Timestamp”
可能是因为“0000-00-00 00:00:00”在mysql中是作为一个特殊值存在的,但 java.sql.Date 将其视为不合法的值格式不正确,这才是报错的原因
解决方式:给jdbc url加上zeroDateTimeBehavior=convertToNull
zeroDateTimeBehavior=round是为了指定MySql中的DateTime字段默认值查询时的处理方式;默认是抛出异常
对于值为0000-00-00 00:00:00(默认值)的纪录,如下两种配置,会返回不同的结果:
zeroDateTimeBehavior=round 0001-01-01:00:00:00.0
zeroDateTimeBehavior=convertToNull:null
6、参数化
数据库测试过程中很多时候需要对内容进行参数化,比如向数据库插入一些数据,但是插入的数据都有唯一性,这时需要我们对insert 语句参数化,jmeter JDBC请求的参数化跟其他请求的参数化方式一样,方法可参考前面的参数化笔记。
jmeter笔记(9)--JDBC Request的使用的更多相关文章
- jmeter(十一)JDBC Request之Query Type
工作中遇到这样一个问题: 需要准备10W条测试数据,利用jmeter中的JDBC Request向数据库中批量插入这些数据(只要主键不重复就可以,利用函数助手中的Random将主键的ID末尾五位数随机 ...
- <转>jmeter(十一)JDBC Request之Query Type
本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...
- <转>jmeter JDBC Request之Query Type
本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...
- JDBC Request :Cannot load JDBC driver class 'com.mysql.jdbc.Driver'解决办法
在Jmeter中run JDBC Request时,收到了Cannot load JDBC driver class 'com.mysql.jdbc.Driver',在网上搜了一些办法,结合自己的实际 ...
- jmeter(五)Sample之JDBC Request
jmeter中取样器(Sampler)是与服务器进行交互的单元.一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录相应时间信息 有时候工作中我们需要对数据库发起请求或者对数据 ...
- Jmeter组件7. JDBC Connection Configuration & JDBC Request
Jmeter同样可以测试数据库的性能,通过执行增删改查的语句,以下举的是oracle的例子 Step 1: 下载ojdbc14.jar包放到Jmeter lib包中,在test plan中配置,并且重 ...
- jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用
JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...
- jmeter jdbc request使用详解
1.在使用 jdbc request之前需要加载一个jar包 在test plan中将jar包引入到classpath中 2.创建一个JDBC Connection Configuration Var ...
- Jmeter之JDBC Request使用方法(oracle)
JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...
随机推荐
- 正确启动从GitHub上下载的vue项目:vueAdmin-template
先讲重点,后上相关资料: 遇到的问题:在启动从GitHub上下载的vue项目:vueAdmin-template 时报错:'webpack-dev-server' 不是内部或外部命令,也不是可运行的程 ...
- cesium 之地图显示坐标、比例尺、海拔高度效果篇(附源码下载)
前言 cesium 官网的api文档介绍地址cesium官网api,里面详细的介绍 cesium 各个类的介绍,还有就是在线例子:cesium 官网在线例子,这个也是学习 cesium 的好素材. 内 ...
- Android项目实战登录&注册
由于项目中大部分界面都有一个后退键和一个标题栏,为避免代码冗杂以及便于利用,我们可以将后推荐和标题栏单独抽取出来定义一个标题栏布局,在 res/layout 目录下新建一个 Layout resour ...
- 数据文件实时同步(rsync + sersync2)
因近期项目需求,需要同步云端服务器的数据给**方做大数据分析. 思路: 起初只要数据同步,准备开放数据采集接口.但实时性较差,会有延迟. 故而寻觅各种解决方案,最终确定使用 rsync 进行文件同步, ...
- mssql2008 r2 修改默认端口
1.点击“开始”-“所有程序”-“Microsoft SQL Server 2008R2”-“配置工具”-“SQL Server配置管理器” 2.在打开的“SQL Server配置管理器”窗口中,在左 ...
- crontab的笔试题随想
最近看到一道题目,具体如下: 下列哪个是创建一个每周三01:00~04:00每3分钟执行一次的crontab指令? A: 1,4 3 /bin/bash /home/sijiaomao/ok.sh B ...
- linux 系统shell运行程序不退出
如果通过ssh远程连接到linux系统终端,在shell下执行程序.假如程序名称为app,且程序本身会一直执行不退出,程序执行需要参数文件paramfile. 当我们用 ./app paramfile ...
- C#中,三种强制类型转换的对比
在C#中,我们可以看到三种强制类型转换,比如强制转换成有符号32位整型,可以找到下面三种方式: ① (int)() ②Convert.ToInt32() ...
- Java 8 Stream介绍及使用2
(原) stream中另一些比较常用的方法. 1. public static<T> Stream<T> generate(Supplier<T> s) 通过gen ...
- Angular CLI 升级 6.0 之后遇到的问题
Angular CLI 1.7.4 在使用 ng build --prod 会构建失败,而 ng build 是正常的.比较好的解决办法是使用 ng build --prod --extract-li ...
