JMeter用户手册第7节(建立一个数据库测试计划)

zxuanzi 2011-02-22

7. 建立一个数据库测试计划

在这部分,你会学习到如何创建一个基本的测试计划来测试一个数据库服务器.你将要创建十个用户发送5个SQL请求到数据库服务器.同时,你会告诉用户运行测试3次.因此,请求的总数是10用户X2请求X重复3次=60个 JDBC请求.为构建此测试计划,你将要使用到以下组件:线程组, JDBC请求 , 图形结果 .

这个例子使用MySQL数据库驱动. 为使用这个驱动,它包含的.jar文件必须拷贝到JMeterlib 文件夹下 (查看 JMeter的Classpath 了解更多细节).
 
7.1 添加用户

每次做JMeter测试计划第一步要做的就是添加一个线程组元件.线程组告诉JMeter你想要模拟的用户数,用户多久发送请求,和他们应该发送多少请求.

添加一个线程组元件.先选中测试计划,右击鼠标在打开的右键菜单中选添加菜单,然后选择添加-->线程组.

你现在应该看到线程组在测试计划下了.如果你没有看到这个元件,那么点击测试计划元件"展开"测试计划树.

下一步,你需要修改默认的属性.选择树中的线程组元件(如果你还没有选择的话).你现在应该看见在JMeter窗口的右侧分栏的线程组控制板(见如下的图7.1).

JMeter用户手册第7节(建立一个数据库测试计划)Figure 7.1. 默认值的线程组

先给我们的线程组起一个具有比较好的描述意义的名字.在名字字段, 输入JDBC Users.

你会需要一个合法的数据库,数据表,和表的用户权限.在这个例子中,数据库是mydb,表名是Stocks.

下一步,增加用户数量到10.

在下一个字段,Ramp-up时间段,留作默认值0秒.这个属性告诉JMeter在启动每个用户时延迟多久.例如,如果你输入一个Ramp-up时间段为5秒,JMeter会在第5秒结束前开启所有的用户.因此,如果我们有5个用户,5秒的Ramp-up时间段,那么每个用户之间的启动延迟为1秒(5用户/5秒=1用户/秒).如果你设这个值为0,那么JMeter会立即启动所有的用户.

最后在循环次数字段输入一个3.这个属性告诉JMeter重复你的测试多少次.让JMeter不停的运行你的测试计划,选择"永远"复选框.

在大多数应用程序里,你不得不手工接受你在控制面板中的做的改动.然而,在JMeter里,当你做了修改后控制面板会自动接受你的修改.如果你改变了元件的名字,树在你离开控制面板后会把那个元件的名字更新成新的(例如,当选择另一个树元件后)

看图7.2查看完成后的JDBC Users线程组.

JMeter用户手册第7节(建立一个数据库测试计划)图 7.2. JDBC Users线程组
 
7.2 添加JDBC请求

现在我们已经定义了我们的用户,是时候来定义他们要做的任务了.在这一节,你会指定要执行的JDBC请求.

先选择JDBC Users元件.点击你的鼠标右键得到添加菜单,然后选择添加-->配置元件-->JDBC Connection Configuration.然后,选择这个新元件查看它的控制面板(看图7.3).

设置下面的字段 (这里假定我们使用一个本地的名叫test的MYSQL数据库):

  • Variable name bound to pool. 这需要唯一标识这个配置. 它被JDBC取样器用来识别被使用的配置
  • Database URL: jdbc:mysql://localhost:3306/test
  • JDBC Driver class: com.mysql.jdbc.Driver
  • Username: guest
  • Password: password for guest

剩下的字段可以保留默认值.

JMeter使用在控制面板里指定的配置创建一个数据库连接池.这个池在JDBC请求的'Variable Name'字段中被提到.一些不同的JDBC配置元件可以被使用,但是它们必须有独立的名字.每一个JDBC请求必须指向一个JDBC配置池.可以有多于一个的JDBC指向同一个池.

JMeter用户手册第7节(建立一个数据库测试计划)图 7.3. JDBC配置

再次选择JDBC Users元件.点击你的右键得到添加菜单,然后选择添加-->Sampler-->JDBC Request. 然后, 选择这个新元件观察它的控制面板 (看图 7.4).

JMeter用户手册第7节(建立一个数据库测试计划)图 7.4. JDBC 请求

在我们的测试计划中,我们造了2个JDBC请求.第一个用来查询Eastman Kodak股票,第二个用来查询Pfizer股票(显然你应该修改例子里的这些东西来适合你的特殊数据库). 请看下面描述.

JMeter按照你向树中添加它们的次序发送请求

首先修改下面的属性值(看图7.5):

  • 修改名称为"Kodak".
  • 输入池名称: MySQL (跟在配置元件中的一样)
  • 输入SQL查询字符创字段.
JMeter用户手册第7节(建立一个数据库测试计划)图 7.5. 查询Eastman Kodak股票的JDBC请求

下一步,添加第二个JDBC请求并且编辑下面的属性(看图 7.6):

  • 修改名称为"Pfizer".
  • 输入SQL查询字符串字段.
JMeter用户手册第7节(建立一个数据库测试计划)图7.6. 查询Pfizer股票的JDBC请求
 
7.3 添加一个监听器来观察/储存测试结果

你最后需要添加到测试计划中的是一个监听器.这个元件负责储存你所有的JDBC请求结果到一个文件中并且以可视化数据模型呈现出来.

选择JDBC Users元件并且添加一个图形结果 监听器(添加-->监听器-->图形结果).

JMeter用户手册第7节(建立一个数据库测试计划)图 7.7. 图形结果监听器

转自:http://zlfoxy.blogbus.com/logs/16785336.html

相关推荐