JMeter配置元件(二)

一 前言

环境: window 10 JMeter 5.3
记录一些常用的配置元件的用法

二 Configuration elements 配置元件

JDBC Connection Configuration

该元件的作用是创建数据库连接池,常常与sampler中的JDBC request一起来创建对数据库的使用,
关于连接数据库在前面的配置数据库连接的文章
image
image

Variable Name for created pool: 连接池的名,在一个JMeter测试计划中可以存在多个JDBC Connection Configuration,这样名称就有多个(注意名称不要重复),后面JDBC request选择名称来配对使用

连接池参数字段:
Max Number of Connection: 连接池允许的最大连接数
一般设置为0. 表示每个线程单独使用自己的数据库连接,该连接在线程间是非共享的
如果想在线程之间共享连接,最好使这里的数量与线程组中的线程数一致,以确保线程间不会互相等待

Max Wait(ms): 创建连接的最大等待时,超过该时间则抛出异常

Time Between Eviction Runs(ms):连接最大空闲时间,超过该事件仍未被使用,则该连接会被关闭

Auto Commit:是否自动提交sql语句

Transaction isolation :数据库事务隔离级别

Preinit Pool:是否立即初始化连接池,默认False,
选择False,后面的JDBC requst的首次查询会需要更多的响应时间

验证连接相关字段:
Test While Idle: 连接空闲时,是否使用Validation Query去测试空闲连接

Soft Min Evictable Idle Time: 连接在连接池中空闲的最短时间

计数器counter

image

该计数器可生成数字的范围是 -2^63 to 2^63-1
Exported Variable Name: 把生成的数赋值给一个变量,在后面可用${变量名}的方式来引用

Track Counter Independently for each User : 全局性质的计数器(所有线程共享),还是每个线程各自独立的计数器,不勾选就是全局的
全局的计数器,例如线程1得到数字1,线程2得到数字3,以此类推
单独的计算器,例如线程1得到1,线程2重新计数还是数字1

Reset counter on each Thread Group Iteration:当上面Track勾选时,该选项才能勾选。
当线程组每次迭代循环时,会重置为初始值。
当计数器位于循环控制器时,该选项尤其有用

示例一

勾选 Track
image
image
image
image
结果树
image
前面2个是线程1-2, 后面2个事线程1-1
可见,每个线程拥有自己独立的计数器,每个线程从头单独生成数字,不受其它线程的影响

同时还注意,Track及Rest勾选与否,区别就在于不同线程下的区别,同一线程下是否勾选是生成的数字没有区别的,上面及后面的实例可以看到,同一线程下的多个sampler中的数字是相同的

示例二

未勾选Track及Rest
结果树
image
前面2个事线程1-1,后面2个事线程1-2
可见,一个计数器作用于所有的线程,后面的线程在前面线程数字的基础上进行计算

示例三

勾选Track及Rest

因为Rest是在线程组迭代的时候把计数器重置到初始值,所以把迭代次数变为2次
image
结果树
image
2个线程都各自生成了2个数字1

对位对比 看下只勾选Track的结果树
image
2个线程各自有一个数字1,也各自有一个数字2

对比结果很明显,勾选Rest时,线程组会在迭代时重头开始计数

示例4

看下官网说的把计数器放在循环控制器下面
image
都勾选Track,对比看下未勾选Rest及勾选rest的情况
image
前面4个事未勾选Rest的结果, 后面4个事勾选Rest的结果
结果看起来没啥不同,2个线程都各自生成数字1 数字2

User Defined Variables

自定义的变量可以定义在test plan,也可以定义在线程组下的配置元件
定义在test plan对整个test有效,定义在线程组只在该线程组的有效,只能在该线程组内引用定义的变量

posted @   工作手记  阅读(79)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
点击右上角即可分享
微信分享提示