Jmeter 建立数据库测试计划
建立数据库测试计划(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)。
1 添加用户(Adding Users)
您要对每个JMeter测试计划执行的第一步是添加一个线程组元件。线程组告诉JMeter您想要模拟的用户数量,用户应发送请求的频率以及应发送的请求数量。 继续添加线程组元件,首先选择测试计划,单击鼠标右键获取 添加 菜单,然后选择 添加 → 线程组。
您现在应该看到“测试计划”下的“线程组”元件。如果没有看到该元件,则通过单击“测试计划”元件,从而展开“线程组”元件。
接下来,您需要修改默认属性。如果尚未选择它,请选择树中的线程组元件。您现在应该在JMeter窗口的右侧部分看到线程组控制面板

首先为我们的线程组提供更具描述性的名称。在名称字段中,输入: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中,控制面板会在您进行更改时自动保存您的更改。如果更改元素了名称,在离开控制面板后(例如,当选择另一个树形元件)时,系统将自动保存您的更改。

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请求可以引用同一个池。

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

在我们的测试计划中,我们将做出两个JDBC请求。第一个是选择所有“运行”VM实例,第二个是选择“展开”VM实例(显然,您应该将这些更改为适合您的特定数据库的示例)。这些如下所示。
JMeter按照您将它们添加到树中的顺序发送请求。
首先编辑以下属性:
- 在Name输入框中输入为:VM Running。
- Variable Name名称为:’myDatabase’(必须与JDBC Connection Configuration元件中Variable Name的命名保持相同)
- 输入SQL查询字符串字段。
- 在 Parameter values 输入框中输入:Running。
- 在 Parameter types 输入框中输入:VARCHAR。

接下来,添加第二个JDBC请求并编辑以下属性:
- 在Name输入框中填入:VM Expunging。
- 在Parameter values输入框中填入:Expunging。

3 添加监听器以查看/存储测试结果(Adding a Listener to View/Store the Test Results)
您需要添加到测试计划中的最后一个元件是 监听器。此元件负责将您的JDBC请求的所有结果存储在文件中并呈现结果。
选择 JDBC Users 元素并添加Summary Report 监听器(“ 添加 → 监听器” →“ Summary Report” )。
保存测试计划,并使用菜单 Run → Start 或 Ctrl + R 运行测试
监听器显示结果。

转载原文:http://www.testclass.net/jmeter/jmeter-doc-06/
Jmeter 建立数据库测试计划的更多相关文章
- Jmeter(六) - 从入门到精通 - 建立数据库测试计划(详解教程)
1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,因此这篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非 ...
- Jmeter(七) - 从入门到精通 - 建立数据库测试计划实战<MySQL数据库>(详解教程)
1.简介 在实际工作中,我们经常会听到数据库的性能和稳定性等等,这些有时候也需要测试工程师去评估和测试,上一篇文章宏哥主要介绍了jmeter连接和创建数据库测试计划的过程,宏哥在文中通过示例和代码非常 ...
- jmeter创建数据库测试计划
这个例子要:创建50个用户发送2个sql请求到数据库服务器, 也可设置用户重复执行100次,这样总的请求数=50*2*100 用到以下元素:thread group / jdbc request / ...
- JMeter 系列之—-02 创建数据库测试计划
Jmeter创建数据库测试计划,包括如下步骤: 1. 添加数据库jar包 使用不同的数据库,要引入不同的jar包.主要有两种方式: 方式1:直接将jar包复制到jmeter的lib目录 方式2:通过测 ...
- Jmeter建立一个扩展LDAP测试计划
Jmeter建立一个扩展LDAP测试计划 添加用户 第一步你想做的每一个JMeter测试计划是添加一个线程组元素. 线程组告诉JMeter的用户数量你想模拟,用户应该发送的次数 请求,他们应该发送的请 ...
- 使用JMeter创建数据库(Mysql)测试
我的环境:MySQL:mysql-essential-5.1.51-win32 jdbc驱动:我已经上传到csdn上一个:http://download.csdn.net/source/3451945 ...
- Jmeter之数据库性能测试
公司的**产品急待上线,但查询订单操作响应很慢,为了准确定位问题,特对几个大数据查询语句进行性能测试. 环境介绍:数据库用的MYSQL,采用分布式布置,本次单压测一台数据库服务器,查询待支付订单.待消 ...
- jmeter 获取数据库表数据作为参数
jmeter - 获取数据库表数据作为参数 在jmeter中使用数据库表数据首先需要设置数据库连接,然后在创建JDBC取样器 1.创建配置元件 JDBC Connection Configuratio ...
- jmeter操作数据库,分布式,在Linux上运行
jmeter操作数据库: 1.在测试计划中导入数据库jar包 2.添加链接数据库信息 3.mysql:jdc:mysql://192.168.1.116:3307/bugfree?allowMulti ...
随机推荐
- Java动态代理(二)CGLIB动态代理应用
JDK自从1.3版本开始,就引入了动态代理,JDK的动态代理用起来非常简单,但是它有一个限制,就是使用动态代理的对象必须实现一个或多个接口 .如果想代理没有实现接口的类可以使用CGLIB包. CGLI ...
- Android各国语言Values文件夹命名规则
android多国语言文件夹文件汇总如下: 中文(中国):values-zh-rCN 中文(台湾):values-zh-rTW 中文(香港):values-zh-rHK 英语(美国):values-e ...
- How To Use XDOLoader to Manage, Download and Upload Files? (DOC ID 469585.1)
In this Document Goal Fix Downloading Files Uploading Files References Applies to: BI Publishe ...
- EBS增加客制应用CUX:Custom Application
1. 创建数据库文件和帐号 [root@ebs12vis oracle]# su - oracle[oracle@ebs12vis ~]$ sqlplus / as sysdba SQL*Plus: ...
- linux 流量统计
因为很多vps或者服务器都是限流量的,但是又很多服务商并没有提供详细的流量表,比如每天的流量表,所以肯定有人很想知道自己服务器到底跑了多少流量. vnstat就是一个很好用的服务器流量统计命令.我截几 ...
- aspnetPage分页控件
项目里面有一个分页,刚好知道了aspnetPage分页控件,现在就把实现步骤和代码贴出来分享一下,如有错误欢迎指正. http://www.webdiyer.com 该控件原网址.里面文档 1.首先 ...
- C语言/C++编程学习:不做C/C++工作也要学C/C++的原因!
C语言是面向过程的,而C++是面向对象的 C和C++的区别: C是一个结构化语言,它的重点在于算法和数据结构.C程序的设计首要考虑的是如何通过一个过程,对输入(或环境条件)进行运算处理得到输出(或实现 ...
- 面向对象SOLID设计原则之Open-Closed原则
首先,我们看下开放-封闭原则(Open-Closed Principle,简称OCP)的概念: 是指软件实体(类.模块.函数等)应该可以扩展,但是不可修改. 任何新功能(functionality)应 ...
- RoadFlow ASP.NET Core工作流引擎IIS部署
RoadFlow最新版本采用ASP.NET CORE2.1开发,部署步骤和.NET CORE部署一样,具体可参数ASP.NET CORE的部署方式. 1. 获取代码 首先从RoadFlow官网下载最新 ...
- (转)Struts2返回JSON数据的具体应用范例
转载自 yshjava的个人博客主页 <Struts2返回JSON数据的具体应用范例> 早在我刚学Struts2之初的时候,就想写一篇文章来阐述Struts2如何返回JSON数据的原理和具 ...