今天我来总结一下Loadrunner中的
检查点函数,主要介绍两个函数:web_find()和web_reg_find()这两个函数均用于内容的查找,但两者也有本质的区别,具体介绍如下:
51Testing软件测试网"Kma!Y6i6zmp:gcV/n]1R72047 一、web_find()函数
}7]{2Z.HIP7204751Testing软件测试网u8?/h kL/g!v 该函数的作用是“在页面中查找相应的内容”,常用参数及含义如下:
'za+Q'F?BJ7204751Testing软件测试网7|D:cD)o!P`#W&aweb_find("web_find", //定义该查找函数的名称
51Testing软件测试网1p S#g"P)u9Hu"RightOf=a", //定义查找字符的右边界
-T&L`"d1S|f&tr|3`72047"LeftOf=b", //定义查找字符的左边界
Oo-Q8F7^M Tb72047"What=name", //定义查找内容
51Testing软件测试网2U!d;QCZzEB ~LAST);
51Testing软件测试网j,k/dgE.m(P,f}Sx3W%gK72047 使用该函数注意以下事项:
k*G v6E.s4rl7204751Testing软件测试网.iU TI-{wg+P 1、 位置
(@Wq"t3F-\ \7204751Testing软件测试网)x+V5p,wH1[+h 该函数在页面内容显示出来以后,在页面中进行查找,所以只能写在要查找内容之后
51Testing软件测试网0tF-RLr6Nh/['Ea#kL#Oq6r6Lw72047 2、 录制模式
%xu}(Ri0v7204751Testing软件测试网 f8t/PQR,Fq 该函数只能在基于HTML模式录制的脚本中进行查找
mq!U9o0K7204751Testing软件测试网Gsy@~ tJU 3、 必须启用内容检查选项
U h9\%T!q}~5BiE#Xw7204751Testing软件测试网g2aW?%|AYJN6c 在runtime setting->Preferences里面,把Enable image and text check选中,否则不执行该查找函数
51Testing软件测试网(aV1ZBF.B}dL!wV`R8A72047 4、 在VB和
JAVA语法中不支持该函数
51Testing软件测试网E8LQLt&d7n51Testing软件测试网A D$Z"_"ej3E 该函数有以下一个缺点:
51Testing软件测试网N0r`(T(pb}51Testing软件测试网 f|M1_;Ke:v | 1、 执行效率较低
!fzm0Rl P9n72047%b!g%Xp'pCq9b72047 2、 不返回查找结果情况,如想在执行该函数后根据查找结果做进一步操作时,没有返回值可以依据
s^(Z_"I7WDt72047VvP.m5@bH72047 例如:
$c@sw.m7204751Testing软件测试网3Kwj(jw&P 在页面中查找“登录成功”的字符串,如果找到该字符串在
日志中输出“登录成功”,如果找不到该字符串,则在日志中输出“登录失败”,此时使用该函数没有依据来做此判断,但使用web_reg_find()函数,使用它其中的SaveCount可以进行判断,具体方法我们下面介绍。
51Testing软件测试网q,lN6P~0X+E51Testing软件测试网dz%MY-DI`6_ 转载请注明出处:http://www.51testing.com/?41972
51Testing软件测试网,z,|r,u Z[&t#|bnn:^nFo+O&v72047 二、web_reg_find()函数
H`6E~m|,K@72047_gMoJ~Chx72047 该函数的作用是“在缓存中查找相应的内容”,常用参数及含义如下:
51Testing软件测试网y DqBX1o^5eu*\pu&_\!Io|4k72047web_reg_find("Search=Body", //定义查找范围
\4`rzg:sb72047"SaveCount=ddd", //定义查找计数变量名称
51Testing软件测试网-i_6f Eu`/z'A"Text=aaaa", //定义查找内容
\]2[6we0E72047LAST);
51Testing软件测试网w @Fe:|$K$r51Testing软件测试网]"Vf}3E/{7thJgK 使用该函数注意以下事项:
51Testing软件测试网Jjr;O U,~!p OE,{51Testing软件测试网TX/E%` g^m/Cc 1、 位置
W)Ue2LA:X72047)J7BJ/~#lh72047 该函数写在要查找内容的请求之前,通常情况下写在如下六个函数之前:
a x hmw7204751Testing软件测试网"RU5v.\)M[(S1k(a5d-NWeb_castom_request(); web_image(); web_link(); web_submit_data(); web_submit_form(); web_url()
jO'L NP+|Wv"T72047i'J8F8h@9G72047 2、 使用技巧
51Testing软件测试网7|AWmPmEpX)u?+B5}R_&}72047 在该函数的参数中有个“SaveCount”,该参数可以记录在缓存中查找内容出现的次数,我们可以使用该值,来判断要查找的内容是否被找到,下面举个例子来说明:(引用LR的帮助中的例子)
.AXRyu|x72047jy CG"N\72047// Run the
WebTours sample
51Testing软件测试网8w#i?2XddD)egweb_url("MercuryWebTours",
51Testing软件测试网j g(wu w As-N5_/I"URL=http://localhost/MercuryWebTours/",
51Testing软件测试网Sc\jAc%G O%g"Resource=0",
Ge8k'WOp'@)I72047"RecContentType=text/html",
PR!bWs72047"Referer=",
Pi;hhH.bBwXs72047"Snapshot=t1.inf",
E~}v:X7Ns%?&e8u72047"Mode=HTML",
51Testing软件测试网1z%a@]8EgI+ILAST);
51Testing软件测试网v t}c.su// Set up check for successful login by looking for "Welcome"
N%O sw0K72047web_reg_find("Text=Welcome",
Kz8U;g$x3r!g72047"SaveCount=Welcome_Count",
51Testing软件测试网J]Iyz![6O~'fILAST);
51Testing软件测试网]F[~*j4H @@// Now log in
G,u"V J.qj2et72047web_submit_form("login.pl",
51Testing软件测试网#O'Vs%K#T5k"Snapshot=t2.inf",
51Testing软件测试网 I0cR/bSc`!QUITEMDATA,
51Testing软件测试网gioMiv*T8?"Name=username", "Value=jojo", ENDITEM,
S v:Hv F?P6`H72047"Name=password", "Value=bean", ENDITEM,
51Testing软件测试网}Om}~f"Name=login.x", "Value=35", ENDITEM,
KRIU%ZJ)Z)H72047"Name=login.y", "Value=14", ENDITEM,
51Testing软件测试网+Osy4})s3g#Wej3mLAST);
dd(X3V4B"U72047// Check result
51Testing软件测试网{?&q4yN8?&}5Y7F:{Fif (atoi(lr_eval_string("{Welcome_Count}")) > 0){ //判断如果Welcome字符串出现次数大于0
6N*kK!SR0_"iPe9p72047lr_output_message("Log on successful."); }//在日志中输出Log on successful
%bgKE.clgb72047else{ //如果出现次数小于等于
UFS"^d72047lr_error_message("Log on failed"); //在日志中输出Log on failed
1] XW4h]*U Z[!u72047return(0); }
51Testing软件测试网U3W` e6y#V 我觉得这个方法非常有用,我们可以举一反三,应用到我们实际的项目中
51Testing软件测试网/~ g%s X1~ _#]51Testing软件测试网;J/d![yu`O[ 三、插入函数的方法
RMB,{[}i7204751Testing软件测试网`L(i,HX(Z9Evl(z? 1、 手工写入,在需要插入函数的位置手工写入该函数
R)L`"t e72047h])i%}$O72047 2、 光标停留在要插入函数的位置,在INSERT菜单中,选择new step,在列表中选择或查找要插入的函数,根据提示填写必要的参数
51Testing软件测试网N_[W+ZO7~'J:^9} y&a8PA.@72047 3、 在tree view模式下,在树状菜单中选中要插入函数的位置,右键,选择insert after或insert before,根据提示填写必要的参数
51Testing软件测试网^?T9Xt `.R!kE^e ~)[72047 四、总结
e@/Rbe/` K7204751Testing软件测试网W)x n |b5AH 1、 这两个函数函数类型不同,WEB_FIND是普通函数,WEB_REG_FIND是注册函数
51Testing软件测试网E1@2d'xB-Bdg)k&e2Y+W&GW(C.r%gN72047 2、 WEB_FIND使用时必须开启内容检查选项,而WEB_REG_FIND则不没有此限制
%I'v%x5K!}C T7204751Testing软件测试网#^d.~\`~-~ 3、 WEB_FIND只能只用在基于HTML模式录制的脚本中,而WEB_REG_FIND没有此限制
51Testing软件测试网j"{ ^e&g`D$HKYp0R|[u,E&QUb72047 4、 WEB_FIND是在返回的页面中进行内容查找,WEB_REG_FIND是在缓存中进行查找
@j1N8igGRr720475F&} }8K;Ni\%@72047 5、 WEB_FIND在执行效率上不如WEB_REG_FIND