今天我来总结一下Loadrunner中的
检查点函数,主要介绍两个函数:web_find()和web_reg_find()这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:
F k9okN:vSN72047F @2s mW.n9r72047 一、web_find()函数
6~9@ uJ6~4y72047pHv+Q{^72047 该函数的作用是“在页面中查找相应的内容”,常用参数及含义如下:
V8QaWTT*v s-Y72047$[cI!a|D'[72047web_find("web_find", //定义该查找函数的名称
MHt V'ZA%qX`pP F72047"RightOf=a", //定义查找字符的右边界
51Testing软件测试网MH+H;\|9cay V"LeftOf=b", //定义查找字符的左边界
$y tIf Q1M1p%h72047"What=name", //定义查找内容
4g0W4G_JP72047LAST);
"ud;MTEs;O}K;~3g72047$? so$Hjc[72047 使用该函数注意以下事项:
51Testing软件测试网l0u&z*Qz51Testing软件测试网'wa#k(C"r5cE|;~ 1、 位置
]w1rw_x^,E"g72047g4VQH%f-^Y,TD%A72047 该函数在页面内容显示出来以后,在页面中进行查找,所以只能写在要查找内容之后
8wnoMz0P_G7204751Testing软件测试网mLT%n&H-y 2、 录制模式
51Testing软件测试网A/}ob+S1N&_t;Kxi1B({t%s?r72047 该函数只能在基于HTML模式录制的脚本中进行查找
51Testing软件测试网F@:s^LRPX+dmP51Testing软件测试网0m+G f,~&xT8^ Ms 3、 必须启用内容检查选项
X[Yw6\-G`"d72047%Ib)t'd}5MNG72047 在runtime setting->Preferences里面,把Enable image and text check选中,否则不执行该查找函数
51Testing软件测试网L3~ySo1vMf7Y51Testing软件测试网@H~/cubPF+E 4、 在VB和
JAVA语法中不支持该函数
51Testing软件测试网b8V*c%BW h+]r4|,~3q]`Kz72047 该函数有以下一个缺点:
51Testing软件测试网w+r-OQ%zj~b51Testing软件测试网"RBdylY5{ 1、 执行效率较低
/b:fiD|6XF7204751Testing软件测试网nc0DH;NCx 2、 不返回查找结果情况,如想在执行该函数后根据查找结果做进一步操作时,没有返回值可以依据
XN@&T$}6^jI-}7204751Testing软件测试网8V~`'x m,Drt6XtM 例如:
51Testing软件测试网X!P IMlc3Y8U$e/^M]2|F}4d72047 在页面中查找“登录成功”的字符串,如果找到该字符串在
日志中输出“登录成功”,如果找不到该字符串,则在日志中输出“登录失败”,此时使用该函数没有依据来做此判断,但使用web_reg_find()函数,使用它其中的SaveCount可以进行判断,具体方法我们下面介绍。
51Testing软件测试网:X"U#v,H$_+{51Testing软件测试网U)k"pEQxo 转载请注明出处:http://www.51testing.com/?41972
,r(h@A)^8Ce5@9F)l7@ Ah72047[8t2`2}EYS5P72047 二、web_reg_find()函数
e~y4T:n9Rgn9~Y7204751Testing软件测试网ouI Jh6sh3Z'b 该函数的作用是“在缓存中查找相应的内容”,常用参数及含义如下:
51Testing软件测试网PY/HW0S.r51Testing软件测试网"Gb US6_#x%\web_reg_find("Search=Body", //定义查找范围
RA!H:JiZN1k#W72047"SaveCount=ddd", //定义查找计数变量名称
0?~}$V4^4E!}72047"Text=aaaa", //定义查找内容
51Testing软件测试网@&Q!\@P~.XLAST);
l7Jx)prj-_72047BCu"TNd'j1[(HB72047 使用该函数注意以下事项:
"s`v%h-`R72047_Q(q4Ml1`72047 1、 位置
SZw|(h Q7204751Testing软件测试网dE/CZG-X:g0u)B 该函数写在要查找内容的请求之前,通常情况下写在如下六个函数之前:
51Testing软件测试网!tNFfs3zZ1`t9Z8lOR'Ly72047Web_castom_request(); web_image(); web_link(); web_submit_data(); web_submit_form(); web_url()
I/t+`S4Th72047p};P[t%X72047 2、 使用技巧
HyBaJ}0K7204751Testing软件测试网Rhk5Pe+NI 在该函数的参数中有个“SaveCount”,该参数可以记录在缓存中查找内容出现的次数,我们可以使用该值,来判断要查找的内容是否被找到,下面举个例子来说明:(引用LR的帮助中的例子)
/s^Ih2N'b/FS72047[~8P1T jv72047// Run the
WebTours sample
51Testing软件测试网 B#Q)R/k8PgA{7N3Tweb_url("MercuryWebTours",
3^1H-E2s8st72047"URL=http://localhost/MercuryWebTours/",
fRq_.x,c9P72047"Resource=0",
2H&IgH|Q72047"RecContentType=text/html",
51Testing软件测试网y S @sdU"Referer=",
51Testing软件测试网 ok}N"U?.a^%^"iX"Snapshot=t1.inf",
U,mu4{ h y(l;f_72047"Mode=HTML",
aF-a$M%k72047LAST);
51Testing软件测试网"GX mzu+cH1btJ// Set up check for successful login by looking for "Welcome"
51Testing软件测试网oZr c6Xdweb_reg_find("Text=Welcome",
'c5J,aPb72047"SaveCount=Welcome_Count",
ah'i_&TzLlbi72047LAST);
51Testing软件测试网7B'jC K2vY// Now log in
51Testing软件测试网fn.YGy/m!M8k5rZweb_submit_form("login.pl",
K _8p5CXc4C!|D72047"Snapshot=t2.inf",
e1Jv5{)[j/r72047ITEMDATA,
'_cJ!f2v8oJ/L72047"Name=username", "Value=jojo", ENDITEM,
|3f&j%l.a*pWv O72047"Name=password", "Value=bean", ENDITEM,
51Testing软件测试网pSFIH9v"Name=login.x", "Value=35", ENDITEM,
51Testing软件测试网M,@Z"i X6t$t"Name=login.y", "Value=14", ENDITEM,
q,i&lbo(D72047LAST);
-v*e'z'c3AG72047// Check result
po/yVg72047if (atoi(lr_eval_string("{Welcome_Count}")) > 0){ //判断如果Welcome字符串出现次数大于0
51Testing软件测试网 k'S S6[ns7Elr_output_message("Log on successful."); }//在日志中输出Log on successful
3h1b1zz5}W72047else{ //如果出现次数小于等于
51Testing软件测试网'q9Oa0tX`lr_error_message("Log on failed"); //在日志中输出Log on failed
DxDi6^72047return(0); }
'M5`(Z+S:aZ\72047 我觉得这个方法非常有用,我们可以举一反三,应用到我们实际的项目中
51Testing软件测试网I+J'z&~k:gE6u)~6Cn72047 三、插入函数的方法
+I C` ] oi$Z M`7204751Testing软件测试网iN;q#\2vkTZ 1、 手工写入,在需要插入函数的位置手工写入该函数
51Testing软件测试网!L na)H-G?0gEs8ks)j5j$@72047 2、 光标停留在要插入函数的位置,在INSERT菜单中,选择new step,在列表中选择或查找要插入的函数,根据提示填写必要的参数
51Testing软件测试网a5Z?/B |%tF n/h(r6`/k,k+R72047 3、 在tree view模式下,在树状菜单中选中要插入函数的位置,右键,选择insert after或insert before,根据提示填写必要的参数
51Testing软件测试网e-qx8QSQ Of)\j;uN f ml+Q72047 四、总结
51Testing软件测试网+xVPC3}'ud-|\7i7~%H72047 1、 这两个函数函数类型不同,WEB_FIND是普通函数,WEB_REG_FIND是注册函数
uUE:XK|#E? I7204751Testing软件测试网A\YY1f(@4\(SE ]5A] 2、 WEB_FIND使用时必须开启内容检查选项,而WEB_REG_FIND则不没有此限制
_8v|,Y)IUH7204751Testing软件测试网wpU3\-s3RD 3、 WEB_FIND只能只用在基于HTML模式录制的脚本中,而WEB_REG_FIND没有此限制
~)Gr~+|lDj:X7204751Testing软件测试网`$ls4D%YW[+n*^7a:g 4、 WEB_FIND是在返回的页面中进行内容查找,WEB_REG_FIND是在缓存中进行查找
9_3w e0d/ba5Wq7204751Testing软件测试网2H*^/X;k^&` 5、 WEB_FIND在执行效率上不如WEB_REG_FIND