将变量传递给 Loadrunner 中的函数
Pass Variable to function in Loadrunner
我有一个名为 TBname
的 ParameterArray
web_reg_save_param_ex("ParamName=TBname",
"LB=sysinfo.asp?s=",
"RB=\" title=\"Systeminformationen",
"Ordinal=all",
LAST);
现在我想将 TBname
的值保存到一个 txt 文件中。
编译程序时出现错误
"too many arguments to 'lr_eval_string'"
因为该函数只需要一个参数,他认为 i
也是一个参数。我怎样才能避免 loadrunner 认为 i
是一个论点?
create_report()
{
int i= 0;
if ((file_stream = fopen(filename, access_mode)) == NULL) {
lr_error_message ("Cannot open or create %s", filename);
return -1;
}
for(i=0;i<10;i++){
TBnameposition = lr_eval_string("{TBname_%d}",i+1);
fprintf(file_stream,"%s \n",TBnameposition);
}
fclose(file_stream);
return 0;
}
在您的情况下,lr_eval_string()
接受 const char *
。
您需要使用 sprintf()
生成一个 字符串 然后用该字符串调用 lr_eval_string()
。
详细说明
- 定义一个
char
数组(足够长),如 char arr[256] = {0}
;
- 使用
sprintf()
将值放入数组,如sprintf(arr, "{TBname_%d}", i+1);
- 呼叫
lr_eval_string(arr)
.
我有一个名为 TBname
web_reg_save_param_ex("ParamName=TBname",
"LB=sysinfo.asp?s=",
"RB=\" title=\"Systeminformationen",
"Ordinal=all",
LAST);
现在我想将 TBname
的值保存到一个 txt 文件中。
编译程序时出现错误
"too many arguments to 'lr_eval_string'"
因为该函数只需要一个参数,他认为 i
也是一个参数。我怎样才能避免 loadrunner 认为 i
是一个论点?
create_report()
{
int i= 0;
if ((file_stream = fopen(filename, access_mode)) == NULL) {
lr_error_message ("Cannot open or create %s", filename);
return -1;
}
for(i=0;i<10;i++){
TBnameposition = lr_eval_string("{TBname_%d}",i+1);
fprintf(file_stream,"%s \n",TBnameposition);
}
fclose(file_stream);
return 0;
}
在您的情况下,lr_eval_string()
接受 const char *
。
您需要使用 sprintf()
生成一个 字符串 然后用该字符串调用 lr_eval_string()
。
详细说明
- 定义一个
char
数组(足够长),如char arr[256] = {0}
; - 使用
sprintf()
将值放入数组,如sprintf(arr, "{TBname_%d}", i+1);
- 呼叫
lr_eval_string(arr)
.