[转]LoadRunner参数化时select next row和update value on的设置
?
转:LR的参数的取值,和select next row和update value on的设置都有密不可分的关系。 下表给出了select next row和update value on不同的设置,对于LR的参数取值的结果将不同,给出了详细的描述。
?
Select next row
Update Value on
实际运行结果
sequential
each iteration
在某次循环中所有用户取值相同。
所有用户第一次循环取第一行值,第二次循环取第二行值
?
each occurrence
在某次循环中或者脚本中使用参数的地方,所有用户取值相同。
脚本中出现要使用参数的话,参数值就更新一次,循环一次值再更新一次。
?
once
在所有的循环中所有用户取值相同。
所有的用户所有的循环中,只用一个值(即参数中的第一行值)
?
?
?
random
each iteration
不同的用户,在不同的循环次数中,随机取值
?
each occurrence
不同的用户,脚本中出现要使用参数的话,随机取值一次,循环一次再随机取值一次
?
once
不同的用户,不管循环多少次,只随机取值一次。
?
?
?
unique
each iteration
若选择手工自配参数,那LR按照每用户几个参数先分配参数,然后进行循环。
若选择自动分配参数:
Controller中edit schedule中run until comletion:按照循环次数先分配第一个VU(例如设置的循环次数为3,那分配给第一个VU 3个参数值),然后接下来的3个参数值分配给第二个VU,依次类推…...
Controller中edit schedule中run for:若选择自动分配,LR将按照用户数均分参数,剩余的参数不使用。
?
each occurrence
只能手工分配用户,给每个用户分配好X个参数后,在脚本中有参数的地方,就使用已经分配好的X个参数。
?
once
按照用户数分配给每个用户分配一个参数而已。以后的循环这个用户就使用这一个参数
?
学习:
1、Select next row:Sequential(顺序执行);Random(随机执行);Unique(唯一)
2、Update value on:Each iteration(每次迭代循环);
可取组合:
1、sequential each iteration 在某次循环中所有用户取值相同。
所有用户第一次循环取第一行值,第二次循环取第二行值 (如果值不够,所有用户循环从第一行-第二行开始取值)
2、 unique?? each iteration 唯一的值并且每次循环时更新值。Controller中edit schedule中run until comletion
注意:使用该类型必须注意数据表中要有足够的数。比如controller中设定20个Vusers进行5次循环(迭代iteration),那么第一个Vusers用户取值1-5行,第二个Vusers用户取值6-10行的数,依次类推,这样数据表中至少要有100行数据,否则Controller运行过程中会返回一个错误。
When out of values :Abort Vuser没有那么多参数时,忽略执行其他用户;Continue in cyclic manner:从第一行起接着循环执行;continue with last value :循环执行最后一个值
3、unique? once 按照用户数分配给每个用户分配一个参数而已。以后的循环这个用户就使用这一个参数。比如:第一个用户,取第1个数据,第二个用户,取第2个数据,依次类推,以后每次循环都使用这个数据。有多少个用户就有多少行数据就ok
?
http://www.cnblogs.com/yuxuan/archive/2011/07/14/2106126.html