jmeter创建数据库测试计划

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

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

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

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

下载地址: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"

原文地址:https://www.cnblogs.com/caojuansh/p/8567095.html