JMeter学习(八)JDBC测试计划-连接Oracle(转载)

摘要:
PoolTimeout:可以修改连接超时。3.右键单击“线程组”并在下面添加一个“JDBC请求”。要修改的参数包括VariableName,它应该与上面的JDBCConnectionConfiguration相同,如下所示:oracleConn。

转载自 http://www.cnblogs.com/yangxia-test

一.测试环境准备

      Oracle:10g

      JDBC驱动:classes12.jar

                             oracle安装目录下(oracleproduct10.2.0db_1jdbclibclasses12.jar)文件复制到JMeter/lib目录下

      JMeter:jmeter-2.11

二.设计测试计划并运行

1.打开JMeter,点击测试计划

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第1张

 点击“浏览...”按钮,将你的JDBC驱动添加进来。

2.添加一个线程组,右键点击“线程组”,在下面添加一个“JDBC Connection Configuration”

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第2张

来配置一下JDBC Connection Configuration页面。

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第3张

Pool Timeout:连接超时可以修改此时间 

3.右键点击“线程组”,在下面添加一个“JDBC request”。

     需要修改的参数包括Variable Name,要与上面的 JDBC Connection Configuration填写同样的内容,如此处的:oracleConn。这里表示 JDBC Connection Configuration建立一个名为Oracle 的连接池,之后其它的JDBC Request都共用这个连接池.

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第4张

注意:SQL语句中,可以使用参数化.插入语句中的值也能参数化,如下图:

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第5张

注意:SQL语句后面不可能添加分号,否则报语法错误. 

4.添加断言,右键点击线程组---->添加--->断言---->响应断言。

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第6张

5.我们来添加一些监听器来行查看:

添加一个断言结果:右键点击线程组---->添加--->监听器---->结果断言。

添加一个图形结果:右键点击线程组---->添加--->监听器---->图形结果。

添加一个查看结果树:右键点击线程组---->添加--->监听器---->查看结果树。

下面是添加所有的列表:

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第7张

6.在线程组页面设置用户数、启动时间、循环次数,再点击菜单栏“运行”----“启动”

下面是结果:

JMeter学习(八)JDBC测试计划-连接Oracle(转载)第8张

至此,Jmeter进行压力测试就到此为此了,具体还要根据实际的项目来进行实施。

备注:Assertion Results对Jmeter压测的throughout有严重的影响。

三.遇到的问题

1、出现:java.sql.SQLException: No suitable driver found for jdbc:oracle:thin:@127.0.0.1:1521:ORCL错误解决

原来是因为没有加载包的缘故

解决方法:关闭jmeter,然后将class12.jar(电脑上搜索一下classes12.jar这个文件)复制到jmeter目录下面的lib目录中,重新启动运行即可。

 

2、连接MySQL数据库时,出现:com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown character set: 'utf8mb4'错误

看起来似乎是设置字符的问题,后来在JDBC连接配置那里将Database URL加上字符编码即可(?characterEncoding=UTF-8)

jdbc:mysql://127.0.0.1:3306/paydb?characterEncoding=UTF-8

 

3、出现:org.apache.avalon.excalibur.datasource.NoAvailableConnectionException: Could not create enough Components to service your request (Timed out).

解决方法:出现这个原因是因为连接超时,增大Pool TimeOUT就可以了。

 

4、执行时提示:ORA-00911: invalid character。

解决方法:确保你在JDBC Request里面的Query中输入的SQL语句是正确的。注意:SQL语句后面不要添加分号。

四.驱动类

不同的驱动类对应的jar不同,一定要注意下面介绍下:MSSQL下载sqljdbc4.jar放在apache-jmeter-2.6lib下面

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"

五.附上所用的jar包

附件

免责声明:文章转载自《JMeter学习(八)JDBC测试计划-连接Oracle(转载)》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Response.flush的用法关于字节对齐下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Oracle DBCA工具检测不到ASM磁盘组

本例环境: 操作系统OEL 6.5 数据库版本:11.2.0.4 问题:DBCA建库的时候,检测不到ASM磁盘组   因素一:可能是在授权的时候执行了 chown –R 775 /u01/app等修改权限。 分析:数据库无法连接ASM,这应该是权限问题,grid的$ORACLE_BASE是/u01/app/grid,oracle的$ORACLE_BASE是...

C# ManagedDataAccess 操作oracle数据库

C# ManagedDataAccess 操作oracle数据库 甲骨文官方制作的oracle类库优点是无需安装oracle客户端 环境准备 Nuget安装 Oracle.ManagedDataAccess 引用 using Oracle.ManagedDataAccess.Client; 连接oracle数据库 连接字符串 connStr = @"Da...

接口测试笔记

1.2 一..接口测试:通过相应的工具或者人工对某一个接口的工作状态进行测试的过程 二..接口测试点: 1.测试接口正确性:保证接口地址与请求方法是正确的 2.测试接口的安全性:有一些接口不能直接暴露,我们需要对它进行炎症之后才可以去调用 3.测试接口的性能:例如:我们需要考虑某一个接口在N多个用户访问的时候工作的压力 4.测试接口的数据:保证接口返回的数...

操作BLOB、CLOB、BFILE

BFILE        二进制文件,存储在数据库外的操作系统文件,只读的。把此文件当二进制处理。 BLOB        二进制大对象。存储在数据库里的大对象,一般是图像声音等文件。 CLOB        字符型大对象。一般存储大数量文本信息。存储单字节,固定宽度的数据。 NCLOB        字节字符大对象。存储单字节大块,多字节固定宽度,多字节...

Oracle获取alter.log的方法

10g下:可以在 admin{sid}pfile文件下的init.ora文件中找到以下内容:audit_file_dest = C:ORACLEPRODUCT10.2.0ADMINORCLADUMP background_dump_dest = C:ORACLEPRODUCT10.2.0ADMINORCLBDUMP user_dump_dest = C:O...

oracle之数据限定与排序

数据限定与排序6.1 简单查询语句执行顺序from, where, group by, having, order by, selectwhere限定from后面的表或视图,限定的选项只能是表的列或列单行函数或列表达式,where后不可以直接使用分组函数SQL> select empno,job from emp where sal>2000;...