loadrunner参数取值方法总结

 

在参数设置位置有两个地方:
Select next row –下一行的取值方式(针对用户)
Sequential 顺序的,即所有用户都是按照同一种方式取值(都是按照Update value on方式取值,一个用户怎么去,多个用户也是怎么取)
Random    随机的,即所有用户的取值都是随机的
Unique      独一无二的,即所有用户取值都不会相同
Update value on – 值更新方式(针对迭代方式)
Each Iteration 每次迭代时更新(一次迭代中参数出现多次也不变,但是取的值按照select方式取)
Each Occurrence 每次遇到参数就更新(一次迭代参数出现多次更新多次,但是取的值按照select方式取)
Once 参数一旦取到就不变

 

 

 

 

 

 

loadrunner并发迭代时参数取值问题   .


loadrunnerrandomeachc脚本


假设存在: 
数据:A、B、C 
虚拟用户:Vuser1、Vuser2、Vuser3 
脚本中参数出现三次,脚本迭代三次 

怎样取下一行数据? 
Sequential:顺序,所有虚拟用户按照顺序读取数据表 
Random:随机,所有虚拟用户随机形式读取数据表 
Unique:唯一,所有虚拟用户每次各取一值(不重复) 

什么时候访问数据表完成数据更新? 
Each iteration:每次迭代以后 
Each occurrence:每次出现参数 
Once:每出现一个虚拟用户 


实例: 
顺序 
Sequential + Each iteration 
第一次迭代 无论参数任何时候出现 Vuser1、Vuser2、Vuser3 取A 
第二次迭代 无论参数任何时候出现 Vuser1、Vuser2、Vuser3 取B 
第三次迭代 无论参数任何时候出现Vuser1、Vuser2、Vuser3 取C 

Sequential + Each occurrence 
第N次迭代 参数第一次出现 Vuser1、Vuser2、Vuser3 取A 
第N次迭代 参数第二次出现 Vuser1、Vuser2、Vuser3 取B 
第N次迭代 参数第三次出现 Vuser1、Vuser2、Vuser3 取C 

Sequential + Once 
第N次迭代 无论参数任何时候出现 Vuser1取A Vuser2取B Vuser3取C 

随机 
Random + Each iteration 
第N次迭代 无论遇到该参数多少次 Vuser1都只取A,或者B,又或者C,本次迭代不再更新 
第N次迭代 无论遇到该参数多少次 Vuser2都只取A,或者B,又或者C,本次迭代不再更新 
第N次迭代 无论遇到该参数多少次 Vuser3都只取A,或者B,又或者C,本次迭代不再更新 
在N+1次迭代,每个Vuser重新随机抽取数据


Random + Each occurrence 
第N次迭代 第一次遇到该参数 Vuser1、Vuser2、Vuser3在A、B、C中随机抽取一个 
第N次迭代 第二次遇到该参数 Vuser1、Vuser2、Vuser3重新在A、B、C中随机抽取一个 
第N次迭代 第三次遇到该参数 Vuser1、Vuser2、Vuser3重新在A、B、C中随机抽取一个 
在N+1次迭代,每个Vuser继续保持每遇到一次参数就重新抽取一次数据 

Random + Once 
第N次迭代 无论遇到该参数多少次 Vuser1都只取A,或者B,又或者C 
第N次迭代 无论遇到该参数多少次 Vuser2都只取A,或者B,又或者C 
第N次迭代 无论遇到该参数多少次 Vuser3都只取A,或者B,又或者C 
在N+1次迭代,每个Vuser不会重新抽取数据 

唯一 
注意:使用该Unique类型必须注意数据表有足够多的数。 
比如Controller 中设定20 个虚拟用户进行5 次循环,那么编号为1 的虚拟用户取前5个数,编号为2 的虚拟用户取6-10 的数,依次类推,这样数据表中至少要有100个数据,否则Controller 运行过程中会返回一个错误。 
因此以下例子在数据表中加入数据D、E、F、G、H、I。 

Unique + Each iteration 
第一次迭代 无论参数出现多少次 Vuser1取A Vuser2取D Vuser3取G 
第二次迭代 无论参数出现多少次 Vuser1取B Vuser2取E Vuser3取H 
第三次迭代 无论参数出现多少次 Vuser1取C Vuser2取F Vuser3取I

Unique + Each occurrence 
第一次迭代 第一次出现该参数 Vuser1取A Vuser2取D Vuser3取G 
第一次迭代 第二次出现该参数 Vuser1取B Vuser2取E Vuser3取H 
第一次迭代 第三次出现该参数 Vuser1取C Vuser2取F Vuser3取I

Unique + Once 
无论进行多少次迭代 无论参数任何时候出现 Vuser1取A Vuser2取B Vuser3取C 
数据D、E、F、G、H、I不取

 

  LoadRunner参数化设置中有九种取值方式:(以用户名参数user为例,其数据参数列表为:jojo、201401、201402、201403、201405、201406、201407、201408、201409,迭代次数设置为10次)

  1、Sequential+Each Iteration

  脚本会执行10次,每次迭代会按数据列表顺序取值,每一次迭代中出现的参数user的值是当前第一次参数替换的值。第1次迭代均为jojo,以此类推。

  2、Sequential+Each Occurrence

  脚本执行10次,每次迭代中出现参数user,顺序取值一次,第1次迭代中出现3次user,则user取值为jojo、201401、201402,等到取值到201409,下次会从第一个数顺序取值。

  3、Sequential+Once

  脚本执行10次,user只取值一次,每次出现的user替换参数值都是jojo。

  4、Random+Each Iteration

  脚本执行10次,数据表中的数据随机取,比如第一次迭代取值201405,则这次迭代中出现参数user地方则用201405替代。

  5、Random+Each Occurrence

  脚本执行10次,数据表中的数据随机取,迭代过程中只要出现参数user的地方就随机取值一次。第1次迭代出现3次user,则随机数为201407、jojo、201403。

  6、Random+Once

  脚本执行10,数据表中数据随机取值,参数user只取值一次,10次迭代过程中出现参数user的地方都是用随机取值(比如201406)替代。

  7、Unique+Each Iteration

  每个用户对应一次数据,当迭代次数超过用户数据量,根据设置情况处理情况,如下图所示

  8、Unique+Each Iteration

  当前有9条数据,没出现一次参数user,只能用一个数值替代,9条数据取完之后根据设置超出值处理。每次迭代出现3次user,则第4次迭代无数据可取,根据超出时设置处理后面的情况。此方式只能执行者决定每个user值分配块的大小。如下图所示:

  9、Unique+Once

  参数user只取值一次,所有的出现参数user都用jojo替换,当前脚本可执行10次。设置如图所示:

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值