zoukankan      html  css  js  c++  java
  • Jmeter(十四)取样器之JDBC Request

    在接口测试中,需要与数据库进行交互,这时候需要用到JDBC Request取样器。

    JDBC Request可以向数据库发送一个请求(sql语句),一般它需要配合JDBC Connection Configuration配置元件一起使用。

    下面就来演示下怎么连接oracle11g:

    1、我们先把需要连接的数据库驱动拷贝到jmeter的lib/目录下,比如我需要连接的数据库是oracle11G,那么对应的驱动就是ojdbc6.jar,不同类型数据库对应的驱动都不一样。

    2、打开Jmeter,在测试计划中把驱动添加进来

    3、添加一个线程组

    4、在线程组中添加配置元件->JDBC Connection Configuration:

    • Variable Name for created pool:数据库连接池的变量名,与JDBC Request的Variable name of Pool保持一致。

    • Max Number of Connections:该数据库连接池的最大连接数,一般可设置为0,意思是每个线程都使用单独的数据库连接,线程之间数据库连接不共享

    • Max Wait (ms) :在连接池中取回连接最大等待时间,如果在试图检索连接过程中(取回连接)超过所设置期限,连接池抛出一个错误

    • Time Between Eviction Runs (ms):疏散时间,在空闲对象驱逐线程运行期间,可以休眠的毫秒数。当非正值时,将运行无空闲对象驱逐器线程。(默认为“60000”,1分钟)(如果当前连接池中某个连接在空闲了time Between Eviction Runs Millis时间后任然没有使用,则被物理性的关闭掉。)

    • Auto Commit :自动提交sql语句,有三个选项:true、false、编辑(自己通过jmeter提供的函数设置)

    • Transaction Isolation:  事务间隔级别设置,主要有如下几个选项:(对JMX加解密) 

    1. TRANSACTION_NODE   事务节点 、

    2. TRANSACTION_READ_UNCOMMITTED  事务未提交读、

    3. TRANSACTION_READ_COMMITTED   事务已提交读 、

    4. TRANSACTION_SERIALIZABLE   事务序列化 、

    5. DEFAULT  默认、

    6. TRANSACTION_REPEATABLE_READ 事务重复读、

    7.  编辑

    • Test While Idle :当空闲的时候测试连接是否断开

    • Soft Min Evictable Idle Time(ms)  :最少的时间连接可能在池中闲置,然后才有资格被闲置的对象驱逐出去,额外的条件是至少在池中保持连接。默认值为5000(5秒)

    • validation query:测试连接是否有效的查询语句,这是Jmeter用来检验数据库连接是否有效的一种机制,超过5秒没有使用的话,就会用validation query去测试下这个连接是否有效

    • Database URL:数据库连接地址

    • JDBC Driver class:数据库驱动,不同数据库的驱动类和URL格式

    Datebase

    Driver class

    Database URL

    MySQL

    com.mysql.jdbc.Driver

    jdbc:mysql://host:port/{dbname}

    PostgreSQL

    org.postgresql.Driver

    jdbc:postgresql:{dbname}

    Oracle

    oracle.jdbc.driver.OracleDriver

    jdbc:oracle:thin:user/pass@//host:port/service

    Ingres (2006)

    ingres.jdbc.IngresDriver

    jdbc:ingres://host:port/db[;attr=value]

    MSSQL

    com.microsoft.sqlserver.jdbc.SQLServerDriver

    或者

    net.sourceforge.jtds.jdbc.Driver

    jdbc:sqlserver://IP:1433;databaseName=DBname

    或者

    jdbc:jtds:sqlserver://localhost:1433/"+"library"

     

     

    • Username:数据库登录名

    • Password:数据库登陆密码

    5、设置好JDBC连接配置后,添加JDBC请求,界面如下:

    Variable name of Pool:这里写入数据库连接池的名字(和JDBC Connection Configuration名字保持一致 )

    Query:里面填入查询数据库数据的SQL语句(填写的SQL语句末尾不要加“;”)

    parameter valus:数据的参数值

    parameter types:数据的参数类型

    variable names:保存SQL语句返回结果的变量名,如果查询结果又多列,可以设置多个变量,以逗号分隔。

    result variable name:创建一个对象变量,保存所有返回结果

    query timeout:查询超时时间

    handle result set:定义如何处理由callable statements语句返回的结果

    6、添加监听器和Debug Sampler,执行。

  • 相关阅读:
    获取滚动条卷入高度以及获取内联和外联的方法
    async
    使一个div元素上下左右居中
    .NetCore/ .NetFramework 机制
    Asp.netCore 是用的Socket 吗?
    Asp.netCore 的Startup 不继承接口
    月球
    JWT
    虚数的作用
    C# mailKit 发邮件 简单代码
  • 原文地址:https://www.cnblogs.com/eastonliu/p/10476923.html
Copyright © 2011-2022 走看看