在参数设置位置有两个地方:
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次。