十五年测试老手,长期负责WEB\APP 项目测试,目前主要负责团队管理工作。

如何操作web_reg_save_param获取的参数

上一篇 / 下一篇  2007-11-03 11:10:06 / 个人分类:loadrunner

51Testing软件测试网.OE3]W w/RM

web_reg_save_param可以方便的让你从web页面上获取你需要的一些参数,让你的测试脚本更具有交互性.函数的具体使用请参考帮助文档,这里主要说明一下如何操作它获取的参数.
:F)w8C.M7m Df M&gh0
rWpe8^01.获取单个参数51Testing软件测试网f7x"ap`;h
看下面例子:
)GW FsOm2w1po0web_reg_save_param("param","LB/ic="Value=","RB="","ORD=1",LAST);51Testing软件测试网y+K D p3TWVK
上面的语句把页面上发现的第一个值存放到param参数中,当然param和你通常定义的变量是有区别的,它是参数不是变量,这个概念要搞清楚,你不能象下面这样给他赋值:
&X%Ytv8M"|0char testParam[20];51Testing软件测试网 K,M3~ g#[4Dy
sprintf(testParam,"%s",param);
(s)B/qPvr(^ n*T0而应该象下面这样:
6q/|0Ox,Q]bPC0sprintf(testParam,"%s",lr_eval_string("{param}"));
QT5J$exv0下面是一个提交随机内容的函数:
:L0F;T@5W9z0web_submit_form("tpcc.pr.prC_ITEMUpdate.do",51Testing软件测试网h:w Zc!qT
"Snapshot=t7.inf",
)T(A0sI/~P,`@0ITEMDATA,
.C;d[ O%fB:q1G7kJ1X0"Name=C_ITEM/I_IM_ID", "Value={im_id}", ENDITEM,
]T+z?P+pZZ0"Name=C_ITEM/I_NAME", "Value={i_name2_value}", ENDITEM,51Testing软件测试网 _;j"A"Vwe
"Name=C_ITEM/I_PRICE", "Value=12.11", ENDITEM,51Testing软件测试网Y7u8H%G0t"Y xT
"Name=C_ITEM/I_DATA", "Value={i_name_value}", ENDITEM,51Testing软件测试网4K3gGaV
LAST);
9T |R~2l$hF)N\0上面大括号中的都是参数,你可以生成一些随机字符串提交,更真实的仿真用户操作.当然你也可以整个把"Value={im_id}"用参数替换,当然你的参数得符合"Value=XXXXX"的格式了:
7sz:Op5r3M0"Name=C_ITEM/I_IM_ID", "{test_param}", ENDITEM,
*|zwq3{ G0也可以整个把它用变量替换:51Testing软件测试网7]*QT k N
char test_str[]="Value=afadfafa";
PoxEt]#SF f0"Name=C_ITEM/I_IM_ID", test_param, ENDITEM,
wy?X/Ds0注意他们之间的差别51Testing软件测试网 r$n"ju\v
51Testing软件测试网1w!V Kw(k I0[r5S~
2.参数数组51Testing软件测试网$d.z0oV!HP
有时候你可能查询回来很多记录,你可能想随机修改其中的某一条,你可以从返回页面获得所有的记录号存放在一个参数数组中:
u1O ~-k _#} C0web_reg_save_param("param_array","LB/ic="Value=","RB="","ORD=ALL",LAST);
QdYpP K%A{ GY0其中param_array_1代表参数一,param_array_2代表参数二...,获取数组长度可以这样:
5f%n;c Ri U*f!~CRv0int array_len,rand_id;51Testing软件测试网1OFDC^-I O
char array_name[20];
6O [(Mh"D/Rt!~E0array_len=atoi(lr_eval_string("{param_array_count}");
K8Rc1X SF8f5y@y0随机获取参数:51Testing软件测试网DhhK-@i\^l
srand(time(NULL));51Testing软件测试网 n&IQQk-@ j [
rand_id=rand()%array_len+1;51Testing软件测试网+B#dz;]Vh
sprintf(array_name,"{param_array_%d}",rand_id);
}?}+y3Xh_0lr_save_string(lr_eval_string(array_name),"param_rand");
%Dj!p;^)F"ey-~b0这样,你的随机值就存放到param_rand参数中了.

{,zg vNb051Testing软件测试网[Iuu4xgp}

上一篇文章:

#I!Z:Fpbg-\s0
web_reg_save_param相关的文章

TAG: loadrunner LR web_reg_save_param

calmzhh的个人空间 引用 删除 calmzhh   /   2012-04-27 16:20:12
5
 

评分:0

我来说两句

Open Toolbar