lr_advance_param()
前进到下一个可用的参数值。
int lr_advance_param(const char *param);
param参数的名称在引号(无括号)中。
lr_advance_param函数使脚本使用参数的下一个可用值。如果正在运行多个迭代,则可以在参数属性中指定,以自动前进到每次迭代的下一个值。在迭代中使用此函数前进到下一个值。
对同一数据文件中的其他参数的影响取决于Vuser参数列表对话框中的设置。参见示例。
此功能不会被记录 - 您将其手动插入到脚本中。
示例:lr_advance_param
在以下示例中,定义了三个参数。 Iteration是一个迭代数类型参数,Param1和Param2在文件Params.dat中定义。Param1和Param2的值为:
Param1 Param2
P1_a P2_a
P1_b P2_b
P1_c P2_c
P1_d P2_d
此脚本显示lr_advance_param的效果。 Param1在每次调用lr_advance_param和每次新的迭代时递增。在Param2的Vuser参数列表对话框中选择下一行设置为“顺序”,Param2仅通过迭代进行,尽管它在同一文件中。但是,在选择下一行设置为“与Param1相同行”时,Param2与Param1前进。
lr_output_message(“迭代%s,参数1%s,参数2%s”,
lr_eval_string(“{迭代}”),
lr_eval_string(“{Param1}”),
lr_eval_string(“{Param2}”));
lr_advance_param(“Param1”);
lr_output_message(“迭代%s,参数1%s,参数2%s”,
lr_eval_string(“{迭代}”),
lr_eval_string(“{Param1}”),
lr_eval_string(“{Param2}”));
选择下一行设置为“顺序”的输出为:
开始迭代1。
Action.c(3):迭代1,Param1 P1_a,Param2 P2_a
Action.c(10):迭代1,Param1 P1_b,Param2 P2_a
结束迭代1。
开始迭代2。
Action.c(3):迭代2,Param1 P1_c,Param2 P2_b
Action.c(10):迭代2,Param1 P1_d,Param2 P2_b
结束迭代2。
选择下一行设置为“与Param1相同行”的输出为:
开始迭代1。
Action.c(3):迭代1,Param1 P1_a,Param2 P2_a
Action.c(10):迭代1,Param1 P1_b,Param2 P2_b
结束迭代1。
开始迭代2。
Action.c(3):迭代2,Param1 P1_c,Param2 P2_c
Action.c(10):迭代2,Param1 P1_d,Param2 P2_d
结束迭代2。