在HP Load Runner VU Gen中,我想白色一个脚本,该脚本从表中读取数据,具有多个列并使用数据来调用基于env的URL。
我有2个具有相同结构的表:mytable_dev和mytable_prod。这些是文件参数表。例如,在mytable_dev.dat中: 名字|姓氏|年龄 约翰|史密斯| 12 劳拉|克罗夫特| 24 ...
我可以做这样的事情来获得" dev"或" prod":
env = lr_get_attrib_string("env");
然后我可以用:
选择表格(dev或prod)sprintf (data_temp,"{url_imd_%s}", env);
lr_save_string (lr_eval_string(data_temp), "data_env");
然后,我想根据表格值调用一些网址:
web_rest("Foo",
"URL=http://somesite.com/foo/{data_env['firstname']}/{data_env['lastname']}",
...
我该怎么做?
的Th。
答案 0 :(得分:2)
答案 1 :(得分:0)
我有一个解决方案。
首先,我使用" table"参数类型,而不是"文件",命名为" date_dev"。在这里" dev"是我的环境的名称。我还有" data_int"," data_prod"等。
fw_save_format_eval_string("{ENV}", "{data_%s}", "DATAS_ENV");
temp = lr_eval_string("{DATAS_ENV}");
fw_splitlist_paramarr(temp, "PARAMETRE", ";");
这里";"是我的CSV分隔符。
完成工作的功能:
int fw_splitlist_paramarr(char *in, char *out_param, char *sep)
{
int i = 0;
char *p, *t, paramName[PARAM_SIZE];
sprintf(paramName, "%s_count", out_param);
lr_free_parameter(paramName);
lr_save_int(i, paramName);
if ((p = strdup(in)) == NULL)
{
lr_free_parameter(paramName);
return -1;
}
t = strtok(p, sep);
while (t != NULL)
{
i++;
sprintf(paramName, "%s_%d", out_param, i);
lr_save_string(t, paramName);
t = strtok(NULL, sep);
}
free(p);
sprintf(paramName, "%s_count", out_param);
lr_free_parameter(paramName);
lr_save_int(i, paramName);
return 0;
}
享受: - )