录制到的脚本:
注:多余的脚本去掉了。
Action()
{
web_url("mercuryWebTours",
"URL=http://127.0.0.1:1080/mercuryWebTours/",
"Resource=0",
"RecContentType=text/html",
"Referer=",
"Snapshot=t1.inf",
"Mode=HTML",
LAST);
web_submit_data("login.pl",
"Action=http://127.0.0.1:1080/mercuryWebTours/login.pl",
"Method=POST",
"RecContentType=text/html",
"Referer=http://127.0.0.1:1080/mercuryWebTours/nav.pl?in=home",
"Snapshot=t2.inf",
"Mode=HTML",
ITEMDATA,
"Name=userSession", "Value=96444.2213041717tQzAitQpzDDDDDDDcQHzfpAQHi", ENDITEM,
"Name=username", "Value=jojo", ENDITEM,
"Name=password", "Value=bean", ENDITEM,
"Name=JSFormSubmit", "Value=on", ENDITEM,
"Name=login.x", "Value=0", ENDITEM,
"Name=login.y", "Value=0", ENDITEM,
LAST);
lr_think_time(4);
web_image("SignOff Button",
"Alt=SignOff Button",
"Snapshot=t3.inf",
LAST);
return 0;
}
|
设置data returned by server后回放得到数据:
<input type=hidden name=userSession value=96444.2921020656tQzAifDpcHfcQHzfpVVQzf>/n
|
在提交前添加关联函数如下:
//需要注意的是长度的变化。这里只说明了固定长度。如果长度是动态的,就不能这样写了。
web_reg_save_param("userSession1",
"LB=name=userSession ",
"RB=>",
"SaveLen=38",
"SaveOffSet=6",
LAST);
|
再次回放,看到replay log中如下:
Action.c(7):Notify:SavingParameter"userSession1=96444.4360469826tQzAizApzHQVzzzHcQHzfp"
|
OK了。
这个功能在一些关联数据是分段的情况下比较适用。