全部博文(78)
分类: LINUX
2009-06-24 16:04:36
对Vuser脚本进行参数化的好处:
1、减小脚本的大小
2、提供了使用不同的脚本的值执行脚本的能力
参数化涉及两个任务:
1、用参数替换Vuser脚本的常量值
2、为参数设置属性和数据源
“Select next row”定义的是如何选择下一行数据。该处有三个选项"Sequential","Random","Unique",
Sequential:顺序地向Vuser分配数据。
Random:当测试开始运行时,“随机”方法为每个Vuser分配一个数据表中的随机值。
Unique:为每一个Vuser的参数分配一个唯一的顺序值。在这种情况下必须确保表中的数据对所有的Vuser
和它们的迭代来说是充足的。如果拥有20个Vuser并且要进行5次迭代,则测试者的表格中必须至
少包含100个数值。
“Update value on”定义的是什么时候更新数据值,备选项有每次迭代,每次出现和一次。
表 LoadRunner参数更新方法和数据分配
更新方法 | 数据分配方法 | ||
顺序 | 随机 | 唯一 | |
每次迭代 | 对于每次迭代Vuser会从数据表中提取下一个值。 | 对于每次迭代,Vuser会从数据表中提取新的随机值。 | 对于每次迭代,Vuser会从数据表中提取下一个唯一值。 |
每次出现(仅数据文件) | 参数每次出现时,Vuser将从数据表中提取下一个值,即使在同一次迭代中。 | 参数每次出现时,Vuser将从数据表中提取新的随机值,即使在同一迭代中。 | 参数每次出现时,Vuser将从数据表中提取新的唯一值,即使在同一迭代中。 |
一次 | 对于每一个Vuser,第一次迭代中分配的值将用于所有的后续迭代 | 第一次迭代中分配的随机值将用于该Vuser的所有迭代 | 第一次迭代中分配的唯一值将用于该Vuser的所有后续迭代 |
如果LoadRunner的函数中某个参数不能直接使用LoadRunner参数,那么可以通过lr_eval_string进行转换取到参数的值。
参数表中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按照每用户几个参数先分配参数,然后进行循环。 |
each occurrence | 只能手工分配用户,给每个用户分配好X个参数后,在脚本中有参数的地方,就使用已经分配好的X个参数。 | |
once | 按照用户数分配给每个用户分配一个参数而已。以后的循环这个用户就使用这一个参数 |