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 ...
随机推荐
- window.location 对象
http://www.home.com:8080/windows/location/page.html?ver=1.0&id=timlq#love 1, window.location.hre ...
- Python入门基础学习 一
Python入门基础学习 一 Python下载及安装 下载地址:https://www.python.org/,选择最新的版本下载 稍等一会,安装完成. 简单语句 从idle启动Python:IDLE ...
- (译)C#参数传递
前言 菜鸟去重复之Sql的问题还没有得到满意的答案.如果哪位大哥有相关的资料解释,能够分享给我,那就太谢谢了. 接触C#一年了,感觉很多东西还是很模糊,像C#中的委托和事件 有些东西看多了不用也还是不 ...
- vmware之VMware Remote Console (VMRC) SDK(三)
前两节我们介绍了vmrc sdk的基本用法.在前面的demo中,有一个关键的问题是,我们现在所作的工作都是基于局域网的,作为应用层面上,主机不会直接暴露给用户,而是通过一系列的web service服 ...
- 针对SQLServer数据库的通用访问类
Web.config中代码 <configuration> <connectionStrings> <add name="connString" co ...
- winform 版本号比较
Version now_v = new Version(strval); Version load_v = new Version(model.version.ToString()); if (now ...
- zstack相关学习的博客
https://segmentfault.com/u/camile/articles?page=1
- PHP set_error_handler()函数的使用
我们写程序,难免会有问题(是经常会遇到问题 ),而PHP遇到错误时,就会给出出错脚本的位置.行数和原因.有很多人说,这并没有什么大不了.确实,在调试程序阶段,这确实是没啥的,而且我认为给出错误路径是必 ...
- ssh 使用密钥无法登入Linux系统
今天测试密钥登入linux系统时 出现如下问题: root@compute01:~# ssh alicxxx@xxx.com -p -i alickicxxxxxxx.key @@@@@@@@@@@@ ...
- SQL 中用户建立与权限授予
SQL 中用户建立与权限授予 一.原有 如果大家对我的博客动态非常关注的话,应该又看到我弄了一个随机MAN信息的小工具.但是呢,那个工具还有待加强(显示效果不是那么的好). 所以我就希望可以显示一些简 ...