Jmeter配置元件——JDBC Connection Configuration参数化

在昨天Jmeter配置元件——CSV DataSet Config参数化一文中,有提到,在参数化时,还可以使用JDBC Connection Configuration配置元件实现,具体如何实现,如何操作,且听详解。

jar包下载

在Jmeter 中想用到连接数据库的功能,必须下载jar包,下载地址

下载好了jar包,如何使用呢?使用方式有二。

其一:下载的jar包保存在非Jmeter的lib下的ext目录下,则需要在Jmeter工程中测试计划元件下指定jar包路径,如下图所示

其二:下载的jar包保存在Jmeter的lib下的ext目录下,则不需要做其他的配置了,也不用担心以后给其他电脑copy文件,忘记copy某个文件夹了【个人推荐这一种方式】

基础配置

我们首先来看界面,如下所示:

根据上图来了解,我们可以把配置界面分成五部分:

1,名称和注释,可随便填写;

2,Variable Name for created pool,Variable Name是定义变量名。填写一个变量名,需要和用到的JDBC request,或者JDBC PreProcessor,或者JDBC PostProcessor中的变量名一致。可知,一个测试计划中可以绑定多个DB源;

3,Connection Pool Configuration,关于数据库连接池的配置,在一般使用中,默认即可;但是想压测,单独负载测试DB,想找出DB最适合的连接池,就要稍加注意;

4,Connection Validation by Pool,在一般使用中,默认即可,Validation Query 一般选择 select 1;

5,Database Connection Configuration,数据库连接配置,在这里着重讲解。数据库连接的配置,将数据库url/port/db name/用户名和密码等填入。jmeter还支持以下几种连接方式:

参数化

参数化一:正则表达式提取

使用JDBC Request请求方式,查询数据,并使用正则表达式提取唯一值,实现参数化,脚本实现如下:

运行脚本,查看结果,如下所示:

参数化二:引用JDBC Request请求变量名

在JDBC Request请求中,配置变量名,配置如下:

运行脚本,查看结果,数据库查询到2个name值,如下:

通过Debug Sampler查看到2个name分别对应的变量名为:

所以脚本参数化调整如下并运行:

参数化三:变量名循环

我们在参数化方式二中,通过Debug Sampler查看,有个变量为name_#的字段,由于查询到2个值,所以等于2,。如果数据库中有很多数据,而且要一一参数化的情况下,难道我们要重复写那么多次的接口吗?答案当然不是,可以引用name_#字段,做为循环次数即可,我们来细看。

①增加循环控制器

我们先增加一个循环控制器,并引用变量值,配置如下:

②增加计数器

再增加一个计数器,定义每次递增值,而来控制循环次数,配置如下:

③引用变量名

按以前引用写法,可能会直接写${name_${name}},但是jmeter中不支持这种写法,所以在这里,需要引进另一个函数,${__V()},参数引用如下:

④查看结果

运行脚本,查看结果如下:

以上就是今天分享的参数化内容了,我们可以看出,方式三更适用于实际业务当中,个人也推荐这种方式。

本文仅代表作者观点,系作者@温一壶清酒发表。欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。文章出处:http://www.cnblogs.com/hong-fithing/

原文地址:https://www.cnblogs.com/hong-fithing/p/12112624.html

时间: 2024-11-10 09:58:38

Jmeter配置元件——JDBC Connection Configuration参数化的相关文章

转:JMeter 参数化之利用JDBC Connection Configuration从数据库读取数据并关联变量

1.   下载mysql jar包 下载mysql jar包 http://dev.mysql.com/downloads/connector/j/ 网盘下载地址:mysql-connector-java-commercial-5.1.25-bin.jar 查看jar包支持的mysql版本: http://dev.mysql.com/doc/connector-j/en/connector-j-versions.html 查看mysql数据库版本:SELECT VERSION(); 注:如果下载

JMeter学习笔记--详解JMeter配置元件

JMeter配置元件可以用来初始化默认值和变量,以便后续采样器使用.将在其作用域的初始化阶段处理. CSV Data Set Config:被用来从文件中读取数据,并将它们拆分后存储到变量中,适合处理众多变量 Variable Names:变量名列表(逗号分隔).JMeter2.3.4以后的版本,支持CSV标题行,如果变量名为空,那么文件的第一行将被读取,并被解释为列名的列表.这些变量名必须使用分割符加以区分,他们可以使用双引号加以引用.默认情况下,该文件仅打开一次,而每个线程会使用文件中不同的

Jmeter配置元件-Http默认请求值

   该组件可以为我们的http请求设置默认的值.假如,我们创建一个测试计划有很多个请求且都是发送到相同的server,这时我们只需添加一个 Http request defaults组件并设置"Server Name or IP",然后添加多个http请求且不设置"server name or ip",这些http请求会默认使用Http request defaults组件设置的值.   位置:配置元件->HTTP请求默认值 在说下默认请求的作用域,可以设置

jmeter配置元件

1.HTTP请求默认值(一次设置,多次使用,例如iP.端口) 2.用户定义的变量 3.csv文件设置变量 4.cookies 5.计数器 6.随机变量 7.登陆配置元件 8.连接数据库 9.上传下载文件 10.java请求 原文地址:https://www.cnblogs.com/diandixingyun/p/12158307.html

Jmeter配置元件User Defined Variables与前置处理器User Parameters的区别

区别在于: 前置处理器在请求之前会执行,而配置元件只是取值 如下例: 1.配置元件 2.前置处理器 两个变量的值一样,都是由函数助手取值组成,在java请求运行前后结果如下: 运行前: 运行后: 说明:前置处理器变量的值会执行得到结果,而配置元件不会执行 所以,在编写脚本时,如果是固定的值,可以用配置元件,如果是函数助手或需要执行的值,用前置处理器. 踩过的坑,记录一下,相互学习! 原文地址:https://www.cnblogs.com/pinktest/p/12268151.html

Jmeter JDBC Connection Configuration 链接失败,提示Error preloading the connection pool

修改数据配置的连接数即可:修改为小一点 下面是oracle 配置连接的方式 原文地址:https://www.cnblogs.com/x2x3/p/10683453.html

jmeter 配置元件之计数器Counter

用jmeter生成数据 我用过几种以下几种方法 1.CSV Data Set Config  参数化 2.${_Random} ${_Random}是jmeter函数助手里面自带的一个函数,作用是返回指定的最大值和最小值之间的一个随机数.但是他有缺点的,那就是生成的数值可能会重复出现 3.写java代码生成一些时间戳随机串,来生成一堆数据 4.就是我这次想分享的计数器 启动(start):给定计数器的起始值.初始值,第一次迭代时,会把该值赋给计数器 PS:英文版是Start,Jmeter的中文语

【转】jmeter学习笔记——JDBC测试计划-连接Mysql

我的环境:MySQL:mysql-essential-5.1.51-win32 jdbc驱动:我已经上传到csdn上一个:http://download.csdn.net/source/3451945 JMeter:jmeter-2.4  任意版本都行. 1.首先我们要有一个可以做测试的数据库,当然,里面要有数据,不然怎么测呢? 来看一下我的数据: 2.打开JMeter,点击测试计划,然后点击“浏览...”按钮,将你的JDBC驱动添加进来. 3.添加一个线程组 右键点击“线程组”,在下面添加一个

JMeter学习-010-JMeter 配置元件实例之 - CSV Data Set Config 参数化配置

众所周知,在进行接口测试的过程中,需要创建不同的场景(不同条件的输入,来验证不同的入参的返回结果).因而,在日常的自动化接口监控或商品监控等线上监控过程中,需要配置大量的入参来监控接口的返回是否正确. 日常常见的线上监控几个简单的监控示例场景如下: 监控电商网站某个类目下的商品数量.若类目中商品的数量小于一定的数量,则认为需要认为查看商品池的商品是否正确: 监控商品的价格.当商品价格出现超出限定的波动幅度时,通知相应的商品负责人,对其进行确认,从而保证商品价格的正确无误. 监控商品在某一地域是否