Jmeter 数据库性能测试

创建一个数据库测试计划

在这一部分,你将学会如何去创建一个基础的测试计划来测试一个数据库服务器。你会创建 10 个用户来给数据库服务器发送 2 次 SQL 请求。同样,你也可以让用户运行他们的测试三次。这样总的 JDBC 请求数量就是(10用户)*(2 次请求)*(重复 3 次)=60。要构建这个测试计划,你将会用到下面的元件:线程组,JDBC 请求,图形结果。

添加用户

处理每个JMeter 测试计划的第一步就是添加 线程组元件。这个线程组会告诉JMeter 你想要模拟的用户数量,用户应该发送请求的频率和应该发送的数量。下一步来添加一个线程组:首先选择这个测试计划,用鼠标右键点击然后在得到的菜单中选择添加--> 线程组。这时你应该看到这个线程组已经在测试计划下面了,如果没有看到,就点击测试计划元件展开这个测试计划树。

下一步,你需要修改这些默认的属性。如果你还没有选择线程组元件,则从测试计划树型结构中选择它。这时你应该看到 JMeter 窗口右边的线程组控制面板了(见图 7.1)。 

 首先给这个线程组起一个有意义的名字。在名称域中, 输入 JDBC Users

 

接下来,将用户的数量(即 threads)增加不 10。在下一个 the Ramp-Up Period 文本域中 , 使用默认值为 0。这个属性表示每个用户启动的迟延时间。例如,如果你输入 Ramp-Up Period 为 5 秒,JMeter 将会在五秒结束前完成 启动所有的用户。所以,如果你有五个用户并且 Ramp-Up Period 为五秒,那么开始用户的延迟就是 1 秒。(5 个用户 / 5 秒 = 1 用户每秒). JMeter 将会立即启动你所有的用户,如果你设置其值为 0。最后,取消标记为"永远"的复选框选择并设置循环次数为 2。 这个属性表示你的测试的重复次数。如果你设置为 1,JMeter 将你的测试只运行一次。 要让 JMeter 不断的运行,你要选择"永远"这个复选框。

 

 

图 7.2 为完整的 JDBC Users 线程组。

 添加 JDBC 

我们已经定义了用户,现在要定义他们的行为了。在这一部分,我们将会详细说明 JDBC 请求。

首先选择 JDBC 用户元件,右键点击,在弹出的菜单中选择 Add --> Config Element --> JDBC Connection Configuration。然后,选择这个新的元件来显示它的控制面板(见图 7.3)。

设定下面的文本域的值(我们这里假定用一个本地的 MySQL 数据库名为 test)。

  • Variable name bound to pool. 这需要能够唯一标识这个配置。
  • Database URL: jdbc: mysql://localhost:3306/test
  • JDBC Driver class: com.mysql.jdbc.Driver
  • Username: guest
  • Password: password for guest

剩下的文本域我们可以保留默认的值。

 

Figure 7.3. JDBC Configuration

再次选择 JDBC 用户元件。右键点击,并在弹出的菜单中选择 Add --> Sampler --> JDBC Request。然后,

选择一个新的元件来显示其控制面板(见图 7.4)。

 

Figure 7.4. JDBC Request

在我们这个测试计划中,我们将发送 2 个 JDBC 请求。第一个是向 Eastman Kodak stock,第二个是向 Pfizer stock(很显然需要改变这些例子来适合你的特殊的数据库)。下面的插图文字说明。

 

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

  • 修改名字 Name 为"Kodak"
  • 输入 Pool Name:MySQL(在配置元件里面一样)
  • 输入 SQL Query String(数据库查讯字符串)

 

Figure 7.5. JDBC Request for Eastman Kodak stock

然后,添加第二个 JDBC 请求并编辑正面的属性(见图 7.6):

  • 修改名字 Name 为"Pfizer"
  • 输入 SQL Query 语句

 Figure 7.6. JDBC Request for Pfizer stock

添加一个监听器浏览/保存测试结果

你需要添加到你测试计划的最后元件是一个监听器。这个元件责任是储存所有你的 JDBC 请求结果到文件,并且展示一个可视数据模型。

选择 JDBC Users 元件,添加一个 Graph Results 监听器(Add --> Listener --> Graph Results)。

 Figure 7.7. Graph results Listener

保存测试计划

虽然它不是需要的,但是我们推荐你在运行前保存测试计划到一个文件。为了保存测试计划,从 File 菜单选

择 Save Test Plan(使用最新版本,它不再需要首先选择测试计划元件)。

 

运行测试计划

从 Run 菜单,选择 Run。

JDBC 设置

不同的数据库和 JDBC 驱动程序需要不同的 JDBC 设置。JDBC 执行的提供者来定义数据库 URL 和数据库驱动程序类。

下面是一些可能的设置。要得到详细的说明请看 JDBC 驱动程序文档。

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]

 

 

更多大厂软件测试干货内容点击如下链接地址获取:

大厂Jmeter高级性能测试项目实战

大厂软件测试全栈系列干货

  • 5
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

传说三哥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值