JMeter官方文档:6. 建立数据库测试计划

虫师 创建于 3 个月 之前

最后更新时间 2018-12-12

《JMeter官方文档--翻译计划》 原文地址

6. 建立数据库测试计划(Building a Database Test Plan)


在本节中,您将学习如何创建测试数据库服务器一个简单的测试计划。您将创建五十个用户向数据库服务器发送2个SQL请求。并且,使这些用户运行测试100次。所以,请求的总数是(50个用户)x(2个请求)x(重复100次)= 10'000个JDBC请求。要构建测试计划,您将使用以下元素: 线程组, JDBC请求摘要报告

此示例使用MySQL数据库驱动程序。要使用此驱动程序,它包含.jar文件(例如mysql-connector-java-XXX-bin.jar) 必须复制到JMeter ./lib 目录(有关详细信息,请参阅JMeter的Classpath)。

6.1添加用户(Adding Users)


您要对每个JMeter测试计划执行的第一步是添加一个线程组元件。线程组告诉JMeter您想要模拟的用户数量,用户应发送请求的频率以及应发送的请求数量。 继续添加线程组元件,首先选择测试计划,单击鼠标右键获取 添加 菜单,然后选择 添加  →  线程组

您现在应该看到“测试计划”下的“线程组”元件。如果没有看到该元件,则通过单击“测试计划”元件,从而展开“线程组”元件。

接下来,您需要修改默认属性。如果尚未选择它,请选择树中的线程组元件。您现在应该在JMeter窗口的右侧部分看到线程组控制面板(参见下面的图6.1)

图6.1 具有默认值的线程组

首先为我们的线程组提供更具描述性的名称。在名称字段中,输入:JDBC users。

您将需要有效的数据库,数据库表和对该表的用户级访问。在这里显示的例子中, 数据库是“guest_test”,表名是“vm_instance”。

接下来,将用户数增加到50个。

在下一个字段中,“Ramp-Up Period” 的值为10秒。此属性告诉JMeter启动每个用户需要多长时间。例如,如果您输入10秒的Ramp-Up Period时间,JMeter将在10秒之后完成所有用户的启动。所以,如果我们有50个用户和10秒的 Ramp-Up Period,则起始用户之间的延迟将是200毫秒(10秒/ 50个用户=每秒0.2个用户)。如果将值设置为0,那么JMeter将立即启动所有用户。

最后,在循环计数字段中输入值100。此属性告诉JMeter重复测试多少次。要让JMeter循环运行测试计划,请选中“永远”复选框。

在大多数应用程序中,您在控制面板中进行的更改必须点击确定按钮。但是,在JMeter中,控制面板会在您进行更改时自动保存您的更改。如果更改元素了名称,在离开控制面板后(例如,当选择另一个树形元件)时,系统将自动保存您的更改。

有关完成的JDBC用户线程组,请参见图6.2。

图6.2 JDBC用户线程组

6.2 添加JDBC请求(Adding JDBC Requests)


现在我们已经定义了我们的用户组,现在是定义他们将要执行的任务的时候了。在本节中,您将指定要执行的JDBC请求。

首先选择“JDBC Users”元件。单击鼠标右键获取 “添加” 菜单,然后选择 添加  →  配置元素  →  JDBC Connection Configuration 。然后,查看此控制面板(参见图6.3)。

设置以下字段(这些假设我们将使用名为“cloud”的MySQL数据库):

  • 绑定到池的变量名(这里:myDatabase)。这需要唯一地标识配置。JDBC采样器使用它来标识要使用的配置。
  • 数据库URL:jdbc:mysql://localhost:3306/guest_test
  • JDBC驱动程序类:com.mysql.jdbc.Driver
  • 用户名:数据库的用户名
  • 密码:用户名密码

屏幕上的其他字段可以保留为默认值。

JMeter使用控制面板中指定的配置设置创建数据库连接池。该池在“变量名称”字段中的JDBC请求中引用。可以使用几个不同的JDBC配置元素,但它们必须具有唯一的名称。每个JDBC请求都必须引用JDBC配置池。多个JDBC请求可以引用同一个池。

图6.3 JDBC配置

再次选择JDBC Users元件。单击鼠标右键获取 “添加” 菜单,然后选择添加  →  Sampler  →  JDBC Request。然后,选择此新元件以查看其控制面板(参见图6.4)。

图6.4 JDBC请求

在我们的测试计划中,我们将做出两个JDBC请求。第一个是选择所有“运行”VM实例,第二个是选择“展开”VM实例(显然,您应该将这些更改为适合您的特定数据库的示例)。这些如下所示。

JMeter按照您将它们添加到树中的顺序发送请求。

首先编辑以下属性(见图6.5):

  • 在Name输入框中输入为:VM Running。
  • Variable Name名称为:'myDatabase'(必须与JDBC Connection Configuration元件中Variable Name的命名保持相同)
  • 输入SQL查询字符串字段。
  • 在 Parameter values 输入框中输入:Running。
  • 在 Parameter types 输入框中输入:VARCHAR。

截图也需要改。

图6.5 JDBC请求第一个SQL请求。

接下来,添加第二个JDBC请求并编辑以下属性(参见图6.6):

  • 在Name输入框中填入:VM Expunging。
  • 在Parameter values输入框中填入:Expunging。

图6.6 JDBC请求第二个请求

6.3 添加监听器以查看/存储测试结果(Adding a Listener to View/Store the Test Results)


您需要添加到测试计划中的最后一个元件是 监听器。此元件负责将您的JDBC请求的所有结果存储在文件中并呈现结果。

选择 JDBC Users 元素并添加Summary Report 监听器(“ 添加  →  监听器”  →“ Summary Report” )。

保存测试计划,并使用菜单 Run  →  Start 或 Ctrl + R 运行测试

监听器显示结果。

图6.7。图形结果监听器

我要留言

暂无评论