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的使用的更多相关文章

  1. jmeter(十一)JDBC Request之Query Type

    工作中遇到这样一个问题: 需要准备10W条测试数据,利用jmeter中的JDBC Request向数据库中批量插入这些数据(只要主键不重复就可以,利用函数助手中的Random将主键的ID末尾五位数随机 ...

  2. <转>jmeter(十一)JDBC Request之Query Type

    本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...

  3. <转>jmeter JDBC Request之Query Type

    本博客转载自:http://www.cnblogs.com/imyalost/category/846346.html 个人感觉不错,对jmeter讲解非常详细,担心以后找不到了,所以转发出来,留着慢 ...

  4. JDBC Request :Cannot load JDBC driver class 'com.mysql.jdbc.Driver'解决办法

    在Jmeter中run JDBC Request时,收到了Cannot load JDBC driver class 'com.mysql.jdbc.Driver',在网上搜了一些办法,结合自己的实际 ...

  5. jmeter(五)Sample之JDBC Request

    jmeter中取样器(Sampler)是与服务器进行交互的单元.一个取样器通常进行三部分的工作:向服务器发送请求,记录服务器的响应数据和记录相应时间信息 有时候工作中我们需要对数据库发起请求或者对数据 ...

  6. Jmeter组件7. JDBC Connection Configuration & JDBC Request

    Jmeter同样可以测试数据库的性能,通过执行增删改查的语句,以下举的是oracle的例子 Step 1: 下载ojdbc14.jar包放到Jmeter lib包中,在test plan中配置,并且重 ...

  7. jmeter 性能测试 JDBC Request (查询数据库获取数据库数据) 的使用

    JDBC Request 这个Sampler可以向数据库发送一个jdbc请求(sql语句),并获取返回的数据库数据进行操作.它经常需要和JDBC Connection Configuration配置原 ...

  8. jmeter jdbc request使用详解

    1.在使用 jdbc request之前需要加载一个jar包 在test plan中将jar包引入到classpath中 2.创建一个JDBC Connection Configuration Var ...

  9. Jmeter之JDBC Request使用方法(oracle)

    JDBC Request: 这个sampler可以向数据库发送一个jdbc请求(sql语句),它经常需要和JDBC Connection Configuration 配置元件一起配合使用. 目录: 一 ...

随机推荐

  1. 1920*1080pc端适配

    (function(doc, win) { var docEl = doc.documentElement, resizeEvt = 'orientationchange' in window ? ' ...

  2. [笔记]记录原开发工作在base命名空间下扩展的属性与方法

    前言 该笔记只是为了记录以前开发使用的方式. 处理命名空间namespace /** * 处理命名空间 * @param {string} 空间名称,可多个 * @return {object} 对象 ...

  3. 浅谈Flutter(一):搭建Flutter开发环境

    学习内容来自: Flutter中文网  . Flutter实战 -------------------------------------------------------------------- ...

  4. 人脸识别ArcFace C#DEMO 开发应用全过程

    手上有一个项目,需要检验使用本程序的,是否本人!因为在程序使用前,我们都已经做过头像现场采集,所以源头呢是不成问题的,那么人脸检测,人脸比对,怎么办呢?度娘了下,目前流行的几个人脸检测,人脸比对核心, ...

  5. ext前后台数据传输的标准化

    一.标准化的数据传输是什么 这里所说的标准化主要是指,使用代理提交数据时,格式必须统一化.标准化,而服务器返回的数据格式也必须是标准化的数据. 简言之,使用代理提交数据时,前台--->后台,后台 ...

  6. selenium-日志文件的使用(十二)

    概述 在自动化测试中,如果测试失败需要对错误的错误的代码或者测试case进行分析,进行分析时最好的方法是在项目中添加日志文件,通过日志文件的分析定位出现错误的原因. 这样可以保持自动化测试用例的健壮性 ...

  7. HDU 6152 - Friend-Graph

    Friend-Graph Time Limit: 10000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Tot ...

  8. bootstarp 多图片上传 带进度条

    前台代码如下: <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head&g ...

  9. Microsoft Deployment Toolkit build 8456

    MDT build 8456的重大变化摘要. 支持的配置更新 Windows ADK for Windows 10,版本1809 Windows 10,版本1809 Configuration Man ...

  10. Linux:Day20(上) openssh和CA

    ssh:secure shell protocol,22/tcp,安全的远程登陆 OpenSSH:ssh协议的开源实现: dripbear:另一个开源实现: SSH协议版本 v1:基于CRC-32做M ...