Jmeter JDBC Request--测试数据库连接

一、Oracle数据库

测试每秒插入100条数据时,数据库的响应。

连接准备:

Database URLjdbc:oracle:thin:@127.0.0.1:1521:ORCL

JDBC Driver classoracle.jdbc.driver.OracleDriver

Usernamescott

Passwordtiger

驱动包:classes12.jar

1、连接准备

1)、在测试计划里面引入class12.jar驱动包

2)、添加【线程组】

设置100个用户在1秒以内启动,然后循环提交100次。

3)、添加配置元件——》JDBC Connection Configuration

4)、添加JDBC request请求

 

其中的Variable Name和上面JDBC Connection Configuration中的Variable Name相同,这里表示JDBC Connection Configuration 建立一个名为ORACLE的连接池,之后其他JDBC Request 都共用这个连接池。

其中:

Parameter values表示我们要添加的数据,需要不同数据添加可以使用参数化

Parameter types为上面需要输入数据的类型,与上面的一一对应

Variable names:变量名称,为数据库的字段名称

2、添加监听器启动

我们添加聚合报告,查看结果树,jp@gc - PerfMon Metrics Collector(监控内存和CPU)

聚合报告:

查看结果树:

jp@gc - PerfMon Metrics Collector

 

数据库查询:

具体分析可以查看以下网址后面的分析结果:

http://www.cnblogs.com/linglingyuese/archive/2013/03/04/linglingyuese-one.html

二、MySQL数据库

连接准备:

Database URLjdbc:mysql://127.0.0.1:3306/paydb

JDBC Driver classcom.mysql.jdbc.Driver

Usernameroot

Password

驱动包:mysql-connector-java-3.0.17-ga-bin.jar

三、出现的错误集锦

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

原来是因为没有加载包的缘故,关闭jmeter,然后将class12.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、出现:Variable Name must not be null in JDBC Request

jdbc请求的变量名不能为空,将jdbc请求的variable name加上即可,需注意,jdbc请求的variable name和JDBC Connection Configuration的variable name必须一致

 

posted @ 2013-03-15 15:58  浮闲  阅读(13192)  评论(0编辑  收藏  举报