JMeter_配置元件之随机变量(RandomVariable)介绍

测试环境

apache-jmeter-3.2

1. 计数器简介

允许用户创建一个在线程组范围之内都可以被引用的随机变量

2. 添加计数器

右键线程组->添加->配置元件->Random Variable

3. 控制面板介绍

添加后,面板如下

l 变量名称(Variable Name) - 用于控制在其它元素中引用该值,形式:$(variable_name}

l Output Format -可选格式,比如000,格式化为001,002,Minimum Value,Maximum Value都设置为1,Number format设置为000,那么格式化后,第一个参数值为001,第二个为002,......,以此类推,假设format设置为user_000,那么格式化后,第一个参数值为user_001,第二个参数值为user_002,...,以此类推。默认格式为Long.toString()

l Minimum Value 生成的最小随机数

l Maximum Value 生成的最大随机数

l Seed for Random function - 供随机数生成器使用的seed.如果为空,则使用默认的Random构造器。

l Per Thread(User)? - 如果设置为False,那么所有线程共享同一个随机数生成器,如果设置为True,那么每个线程独享各自的随机数生成器

多线程 运行的情况下:

l 假如Seed for Random function不为空,为手动输入的某个固定常量,

1) Per Thread(User)? 设置为True,那么每个线程都使用自己的随机数生成器,因为Seed相同,所以,每次运行脚本,每个线程获取到的随机数变量值是一样的。

2) Per Thread(User)? 设置为False,那么每个线程共享同一个随机数生成器,所以,每次运行脚本,每个线程获取到的随机数变量值是不一样的。

l 假如Seed for Random function不为空,即按默认,那么不管per Thread(User)?设置为True还是设置为False,生成的随机数都不相同

l seed相同,per Thread 设置为True ,每个线程使用各自的随机数生成器,所以两个生成的随机数相同,要不同则设置为False

不管是 多线程 还是单线程,使用相同的Seed,运行相同次数,对应次数生成的随机数完全相同。

,也就是说,随机数生成器是根据Seed,然后按照某种算法一步一步生成随机数的,如果Seed一定,算法相同,那么对应步骤产生的随机数也就一样

推荐设置:

无特殊需求的情况下,建议Seed for Random function 不填,使用默认,Per Thread(User)?

设置为False

参考链接:

++Apache JMeter - User's Manual: Component Reference++

相关推荐
qq_4924484462 天前
Jmeter Transaction Controller(事务控制器) 的 TPS(每秒事务数)严格固定为 1
java·开发语言·jmeter
Rookie_hh2 天前
使用Jmeter进行性能测试
jmeter
qq_452396235 天前
第十四篇:《JMeter插件扩展:自定义函数与第三方插件》
开发语言·python·jmeter
qq_452396235 天前
第十三篇:《分布式压测:JMeter Master-Slave集群》
分布式·jmeter
qq_452396236 天前
第十一篇:《性能压测基础:JMeter线程模型与压测策略设计》
java·开发语言·jmeter
沫沫-小白6 天前
JMeter 上传固定文件时,如何修改 Content-Disposition 的 filename
jmeter
qq_452396237 天前
第六篇:《JMeter逻辑控制器:循环、条件和交替执行》
android·java·jmeter
qq_452396239 天前
第四篇:《JMeter参数化:CSV数据文件与用户变量》
jmeter
qq_452396239 天前
第五篇:《JMeter关联:提取动态数据并传递给后续请求》
jmeter
弹简特10 天前
【Fiddler抓包工具】一文通关Fiddler抓包工具【附:Fiddler结合jmeter接口测试实战】
jmeter·fiddler·接口测试·抓包