这个例子要:创建50个用户发送2个sql请求到数据库服务器,

也可设置用户重复执行100次,这样总的请求数=50*2*100

用到以下元素:thread group / jdbc request / summary report

这个例子使用sqlserver数据库驱动,需要将驱动 .jar文件放于jmeter\lib下

下载地址:http://www.microsoft.com/zh-CN/download/details.aspx?id=11774

需要有一个有效的数据库,数据表,用户级别的访问数据表的权限,这里用 XSData 数据库 表:tbInfoClient

1 每个jmeter测试计划-首先要添加一个thread group 元素,thread group 元素告诉jmeter要模拟的用户数,多长时间发送一次请求,发送请求次数

设置属性:

  name:jdbc users

  users:50

  Ramp-up period=10 (延迟多长时间启动线程,50/10=5秒启动一个线程)

  loops=100(重复执行100次)

jmeter面板自动接受修改数据,如果改变了一个元素的名称,在焦点离开文本框时树列表名称改变

2 添加jdbc request

选择jdbc users结点-右键-Add-Config Element-JDBC conection configuration

属性:veriable name bound to pool:唯一标识这个配置,被jdbc sampler使用指定使用的配置

  database url:  jdbc:jdbc:sqlserver://127.0.0.1:1433;databasename=XSData     如果是mysql(mysql://ipOfTheServer:3306/xsdata)

  JDBC driver class:选择sqlserver.jdbc     如果是mysql(com.mysql.jdbc.Driver)

  username:sa

  password:123

其他属性可以使用默认值

jmeter根据配置创建一个数据库池,这个池根据variable name 关系到jdbc request

可以使用多个不同的jdbc configration元素,但是必须有唯一的名称

每个jdbc request 必须关系到一个数据库配置池,多个jdbc request 可以关系到同一个数据库配置池

3 添加jdbc request

选择jmeter users (thread group)-右键-Add-Sampler-JDBC Request

在这里我们添加2个jdbc request 第1个用来选择所有状态字段不为空的记录,第2个用来选择所有记录状态为空的记录

修改属性:Name :JDBC Request Running

  输入variable name bound to pool:mydatabase (与配置一致)

  输入sql qurey: select * from tbInfoClient where isnull(MemberLevelID,0)<>? 使用占位符出错 使用语句:select * from tbInfoClient where isnull(MemberLevelID,0)<>0

  输入字段值

  输入字段类型

  (可在test plan 添加变量:o_value)

添加第2个jdbc request:设置属性如图:

4 添加 listener

选择jmeter users(thread group)-右键-Add-Listener-summary report

Label:取样器/监听器名称

Samples :事务数量

Average:平均一个完成一个事务消耗的时间(平均响应时间)

Median:所有响应时间的中间值,也就是 50% 用户的响应时间,大概是这个意思

Min:最小响应时间

Max:最大响应时间

以上单位都是ms

Std.Dev:偏离量,越小表示越稳定

Error %:错误事务率

Throughtput:每秒事务数,即tps

KB/sec:网络吞吐量

  

  

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]

MSSQL

com.microsoft.sqlserver.jdbc.SQLServerDriver

或者

net.sourceforge.jtds.jdbc.Driver

jdbc:sqlserver://IP:1433;databaseName=DBname

或者

jdbc:jtds:sqlserver://localhost:1433/"+"library"

jmeter创建数据库测试计划的更多相关文章

  1. JMeter 系列之—-02 创建数据库测试计划

    Jmeter创建数据库测试计划,包括如下步骤: 1. 添加数据库jar包 使用不同的数据库,要引入不同的jar包.主要有两种方式: 方式1:直接将jar包复制到jmeter的lib目录 方式2:通过测 ...

  2. Jmeter 建立数据库测试计划

    建立数据库测试计划(Building a Database Test Plan) 在本节中,将学习如何创建测试数据库服务器一个简单的测试计划.您将创建五十个用户向数据库服务器发送2个SQL请求.并且, ...

  3. 使用JMeter创建数据库(Mysql)测试

    我的环境:MySQL:mysql-essential-5.1.51-win32 jdbc驱动:我已经上传到csdn上一个:http://download.csdn.net/source/3451945 ...

  4. jmeter 创建web测试计划

    测试用例: 1 创建5个用户发送请求到2个web页面: 2 发送3次请求 总请求=5*2*3=30 创建这个测试计划需要用到以下元素:thread groups / http request / ht ...

  5. 转:使用JMeter创建数据库(Mysql)测试

    我的环境:MySQL:mysql-essential-5.1.51-win32 jdbc驱动:我已经上传到csdn上一个:http://download.csdn.net/source/3451945 ...

  6. 【数据库】使用JMeter创建数据库(Mysql)测试

    我的环境:MySQL:mysql-essential-5.1.51-win32 jdbc驱动:我已经上传到csdn上一个:http://download.csdn.net/detail/paulwin ...

  7. Jmeter创建WebService 测试计划

    构建 WebService 测试计划 在本章节,你将学习如何创建一个 测试计划 去测试 WebService.先创建5个用户请求同一个页面,同时每个请求重复2次,因此总数为(5个用户)X(1次请求)X ...

  8. Jmeter创建FTP测试计划

    创建FTP测试计划 在这一章,你将学习如何创建一个基础的测试计划来测试FTP站点.你将在一个FTP站点上的两个文件中创建四个用户来发送请求.并且,你将告诉用户运行测试两次.所以,总的请求数是(4个用户 ...

  9. Jmeter创建web测试计划

    创建web测试计划 在这一章,我们将学习如何创建基本的测试计划来测试一个web网站.您将创建五个用户并发送请求到JMeter网站的两个页面.同时,设置用户运行测试两次.因此,请求的总数是(5个用户)x ...

随机推荐

  1. 从Excel表导入数据到Table

    步骤: 1.写第一行SQL,(本sql对应的是oracle数据库) ="INSERT INTO TD_PROMOTION_RATE VALUES("&A3&&quo ...

  2. Mac 快速切换桌面快捷键

    Mac系统可以新建多个桌面,我习惯开三个桌面,第一个桌面放浏览器.QQ等娱乐窗口,第二个窗口开Xcode等编程工具(不编程用Mac干啥,是吧),第三个窗口放一些笔记啊,工具什么的. 一般切换的时候,可 ...

  3. [转]免费数学神器!再复杂的公式,只要有照片就能转成LaTeX

    转自:https://mp.weixin.qq.com/s/ja7UGr742DtYglGU6TT4qg 又一数学神器来袭! 这是一个帮你快速把数学公式图片转成LaTeX代码的工具,名为Snip,可以 ...

  4. python链家网高并发异步爬虫asyncio+aiohttp+aiomysql异步存入数据

    python链家网二手房异步IO爬虫,使用asyncio.aiohttp和aiomysql 很多小伙伴初学python时都会学习到爬虫,刚入门时会使用requests.urllib这些同步的库进行单线 ...

  5. centos7搭建kibana

    上一节elasticsearch搭建地址 https://www.cnblogs.com/mutong1228/p/10181544.html 学习了上一篇的搭建,理解了命令的含义之后,本节就非常方便 ...

  6. linux笔记-多服务器同时执行相同命令

    1.服务器的ip地址写到文件中,命名为nodelist.txt 192.168.1.160 192.168.1.166 2.编写运行脚本 for i in `cat nodelist.txt`do s ...

  7. odoo生产单原材料报表

    原材料表: 需求量:生产单里面mrp_production里面的需求数量,这里不能直接和产品相连,因为生产单里面是原材料而产品表里是成品,通过物料清单里的bom表与产品表相连 select t6.产品 ...

  8. 清除EasyUi combotree下拉树的值

    由于测试自带的$(“node”).combotree("clear');问题始终解决不了 最终方法: Hdata是JSON数据源, 在它动态加在成功之后(节点全部显示出来,并且可以选择)再清 ...

  9. [WPF] How to bind to data when the datacontext is not inherited

    原文:[WPF] How to bind to data when the datacontext is not inherited 原文地址:http://www.thomaslevesque.co ...

  10. Python 学习 第七篇:函数1(定义、调用和变量的作用域)

    函数是把一些语句集合在一起的程序结构,用于把复杂的流程细分成不同的组件,能够减少代码的冗余.代码的复用和修改代码的代价. 函数可以0个.1个或多个参数,向函数传递参数,可以控制函数的流程.函数还可以返 ...