LoadRunner sprintf 和 lr_eval_string
LoadRunner sprintf and lr_eval_string
我遇到了一些问题,我确定这些问题是正确的代码,正如我今天之前看到的那样,并且没有对脚本进行任何更改,只有一个 VUGen 版本 change/upgrade。
HP 虚拟用户生成器::版本:12.02.0.0
ClockingIDCount = atoi(lr_eval_string("{ClockingID_count}"));
lr_output_message("CIDCount:%d",ClockingIDCount);
lr_output_message("ClockingID1::%s",lr_eval_string("{ClockingID_1}"));
for (i = 1; i <= ClockingIDCount; i++) {
sprintf(loopParam, "{ClockingID_%d}", i);
lr_output_message("ClockingID: %s %s %s", loopParam, lr_eval_string("{loopParam}"), lr_eval_string(lr_eval_string("{loopParam}")));
}
输出:
Action.c(120): CIDCount:21
Action.c(121): Notify: Parameter Substitution: parameter "ClockingID_1" = "6829888"
Action.c(121): ClockingID1::6829888
但是使用sprintf
函数迭代捕获的项目,returns;
Action.c(125): ClockingID: {ClockingID_1} {loopParam} {loopParam}
注意:我知道第 3 次 %s
评估不应该起作用 - 只是一个想法,因为我之前看到它解决了类似的问题。
代码被篡改!
解决方案 :: 从 lr_eval_string
函数中删除 "{ }"
;
解决方案:: lr_output_message("ClockingID: %s", lr_eval_string(loopParam));
我遇到了一些问题,我确定这些问题是正确的代码,正如我今天之前看到的那样,并且没有对脚本进行任何更改,只有一个 VUGen 版本 change/upgrade。
HP 虚拟用户生成器::版本:12.02.0.0
ClockingIDCount = atoi(lr_eval_string("{ClockingID_count}"));
lr_output_message("CIDCount:%d",ClockingIDCount);
lr_output_message("ClockingID1::%s",lr_eval_string("{ClockingID_1}"));
for (i = 1; i <= ClockingIDCount; i++) {
sprintf(loopParam, "{ClockingID_%d}", i);
lr_output_message("ClockingID: %s %s %s", loopParam, lr_eval_string("{loopParam}"), lr_eval_string(lr_eval_string("{loopParam}")));
}
输出:
Action.c(120): CIDCount:21
Action.c(121): Notify: Parameter Substitution: parameter "ClockingID_1" = "6829888"
Action.c(121): ClockingID1::6829888
但是使用sprintf
函数迭代捕获的项目,returns;
Action.c(125): ClockingID: {ClockingID_1} {loopParam} {loopParam}
注意:我知道第 3 次 %s
评估不应该起作用 - 只是一个想法,因为我之前看到它解决了类似的问题。
代码被篡改!
解决方案 :: 从 lr_eval_string
函数中删除 "{ }"
;
解决方案:: lr_output_message("ClockingID: %s", lr_eval_string(loopParam));