loadrunner 多用户并发操作解读

假设存在: 
数据: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 多用户并发操作解读)