LR参数化后取值规则小记
对参数化的取值,只有一个用户的情况能分清,但是多用户多迭代就搞不懂,特意使用Parameter List中自带的参数化模拟器Simulate Parameter进行简单的实验,3条数据 + 4个用户 + 4次迭代,具体情况如下。
3条数据准备如下,Select column采用的By number :1。

|
Sequential & Each iteration |
注:此时“Continue with last value”失效 |
|
Sequential & Each Occurrence |
模拟器中无法进行,只能在Controller中验证。 对每一个Vuser而言,每遇到参数一次(哪怕是在lr_eval_string()函数中使用),就会顺序更新一次该参数值。 |
|
Sequential & Once |
![]() |
|
Radom & Each iteration |
![]() |
|
Radom & Each Occurrence |
对每一个Vuser或者每一次迭代而言,每遇到参数一次,就随机更新一次该参数值。 |
|
Radom & Once |
![]() |
|
Unique & Each iteration |
Allocate Vuser values in the Controller默认为:Automatically allocate block size。 When Out of Values默认为:Continue with last value。 这两个参数对于Unique+iteration和Unique+Occurrence很重要。 |
|
Unique & Each Occurrence |
对每一个Vuser或者每一次迭代而言,每遇到参数一次,就随机更新一次该参数值。
|
|
Unique & Once |
注:无论多少次迭代,vuser1取第一条;Vuser2取第二条,以此类推…… |
结合上面的实验结果,总结如下。
(1)Select next row决定获取数据的方式,是顺序还是随机或者唯一不变,Update value on决定更新数据的时机,是每次迭代更新还是参数出现更新或者迭代不更新。
(2)若Select next row为“Sequential”,则对于任何一个vuser而言,都是从数据表的第一条数据顺序读取,至于什么时候读取新值,取决于Update value on。
(3)若Select next row为“Unique”,则必须使数据条数满足当前设定否则会报错;Unique & Each iteration则数据条数至少要为:Vuser个数 * iteration次数。
(4)若Update value on 为“Once”,则每次迭代不更新数据。
Allocate Vuser values in the Controller
(1)Automatically allocate block size(自动分块)。
系统自动统计一个Vuser运行完毕所需要的参数的个数,也就是分块大小,然后顺序为每一个Vuser分配数据,这里假设所需参数为3。

Vuser分到的参数不够,将在自己分的块中进行取值,这里的取值方式又包括“Continue with last value”都和最后一个取到的参数值保持一致;“Continue in a cyclic manner”在该Vuser中循环取值。
(2)Allocate ** values for each Vuser(分配**块给每个Vuser)。
自定义块大小,块内数据不足与自动分块处理方法一致。
最后,附上好图三枚,很赞的,还总结了Each Occurrence有多参数的情况~



对参数化的取值理解还是很浅薄的,希望在今后的工作学习中能深入理解,欢迎各路大神指导~
LR参数化后取值规则小记的更多相关文章
- LoadRunner脚本实例来验证参数化的取值
LoadRunner脚本实例来验证参数化的取值 SINM {3]!G0问题提出: 主要想试验下,在Controller中,多个用户,多次迭代中参数的取值.51Testing软件测试网(['H5f,d ...
- LR参数组取值操作方法
LR参数组取值操作方法 奶奶的,每次都要重写一次,粘这里,以后备用.这个使用频率高. Action(){//定义一个变量int rNum; //关联参数组,前提是请求的页面中,存在参数组web_reg ...
- LR参数化取值规则总结
我想使用参数化输入设置10个并发用户循环1000次,第一个用户使用参数列表中的前1000个参数(第依次循环使用第一个参数.第二次循环使用第二个参数,依次类推).第二个用户使用参数列表中的2001-30 ...
- jmeter参数化随机取值实现
jmeter能用来做参数化的组件有几个,但是都没有随机取值的功能,遇到随机取值的需求怎么办呢? 突发奇想,可以用函数__CSVRead()来实现: __CSVRead() CSV file to ge ...
- Loadrunder之脚本篇——参数化同行取值
select next row 记录选择方式 Same line as,这个选项只有当参数多余一个时才会出现,其作用是根据某一个参数的行号取同一行. 例中的做法如下: 将多个参数存放在一个参数文件中: ...
- nacos作为配置中心动态刷新@RefreshScope添加后取值为null的一个问题
之前springboot项目常量类如下形式: @Component @RefreshScope//nacos配置中心时添加上 public class Constants { @Value(" ...
- ul>li中自定义属性后取值的问题
动态赋值的li: $.ajax({ type: "POST", url: "${base}/before/subDemand/listType", succes ...
- spring cloud --- config 从git 获取文件【 可能是yml或 properties】遇到有相同字段的取值规则
spring boot 1.5.9.RELEASE spring cloud Dalston.SR1 1.前言 昨天做了 spring cloud config 配置中心 获取存在gi ...
- 关于bootstrap的treeview不显示多选(复选框)的问题,以及联动选择的问题,外加多选后取值
最近做项目用到了treeview.因为涉及到多选的问题,很是棘手,于是乎,我决定查看原生JS,探个究竟.需要引用官方的bootstrap-treeview.js都知道吧,对于所需要引用的,我就不多说了 ...
随机推荐
- Vue 双层嵌套
这种的需要双层嵌套. 代码: <table id="ict-table" class="ict-table ict-report-table blue-theme& ...
- 【转】Ubuntu防火墙设置
1.安装 sudo apt-get install ufw 2.启用 sudo ufw enable sudo ufw default deny 运行以上两条命令后,开启了防火墙,并在系统启动时自动开 ...
- SQL scripts
Add a column with default current date timeALTER TABLE [TableName]ADD CreatedOn DATETIME NOT NULL DE ...
- JAVA线程池原理详解一
线程池的优点 1.线程是稀缺资源,使用线程池可以减少创建和销毁线程的次数,每个工作线程都可以重复使用. 2.可以根据系统的承受能力,调整线程池中工作线程的数量,防止因为消耗过多内存导致服务器崩溃. 线 ...
- Control Flow
1.重写折半查找,使得在循环内部只执行一次测试 传统的非递归式的折半查找的例子中,while循环语句内部共执行了两次测试,其实只要一次就足够(代价是将更多的测试在循环外执行).重写该函数,使得在循环内 ...
- W3cshool之JavaScript基础
1. JavaScript 对大小写敏感 名为 "myfunction"的函数和名为 "myFunction" 的函数是两个不同的函数,同样,变量 & ...
- 【转】有监督训练 & 无监督训练
原文链接:http://m.blog.csdn.net/article/details?id=49591213 1. 前言 在学习深度学习的过程中,主要参考了四份资料: 台湾大学的机器学习技法公开课: ...
- windows消息和消息队列
windows消息和消息队列 转自:http://blog.163.com/zhangjie_0303/blog/static/990827062010113062446767/ 与基于MS - DO ...
- Android DiskLruCache 源码解析 硬盘缓存的绝佳方案
一.概述 依旧是整理东西,所以近期的博客涉及的东西可能会比较老一点,会分析一些经典的框架,我觉得可能也是每个优秀的开发者必须掌握的东西:那么对于Disk Cache,DiskLruCache可以算佼佼 ...
- ATI Radeon HD 5450 with full QE/CI Support ( 转载 )
ATI Radeon HD 5450 with full QE/CI Support - DSDT (Contains HDMI Audio Edit Too) & AGPM included ...






