csdn博客:http://blog.csdn.net/qwentest

QTP之无分页功能的查找脚本

上一篇 / 下一篇  2010-09-04 16:53:09 / 个人分类:Bug那些事儿

作者:文青山

0e3M W'K`K f XKr0

时间:2010-9-0451Testing软件测试网1OWO M4R;l%@

标题:QTP之无分页功能的查找脚本51Testing软件测试网QAcKu\E B,W

注意:请尊重版权!

}c9n?W Sv0

s;O7c^ Mz p5j0无分页功能的查找脚本,其主体结构为“完全匹配查找”和“模糊查找”,按照Case的逻辑需要进行修改,缺点是当表列的数据很多时,检查的速度太慢了,
xe{'V8]6J*]R.U0L/U0有没有更高的效率去查找,目前还不得而知。51Testing软件测试网0n|;}%pKRz

51Testing软件测试网p}.z\j

51Testing软件测试网QE5u2J!Es,Y,K:W
Dim compterName          '本机名51Testing软件测试网t7B2KX`SO/@
Dim fucationPath              '函数地址
~#}dh1Q#li&VI!Dk0fucationPath="F:\qtptest\fucation\fucations.vbs"  '函数组件
ZJ7T_h$?!n*G{0ExecuteFile fucationPath
gSo b'zeG0CloseIE()     '调用组件中的CloseIE(),结束IE进程
EYg&kn6IW"?0CloseExcel()   '调用组件中的CloseExcel(),结束Excel进程
3ZP*nI [ AQ"A0Url "XXXXXXXXXXXXXXX" '导航
-x%LmoVr6}rV c0login(username,password) '登录
$})?.{J(\!sq0Dim  checkTest151Testing软件测试网H#X8cb2sSO2`a0Z
Dim  checkTest2
_8y8f;yS u0Dim check
/{}VEw3@`}6nluD0Dim totalRowNumber
`iZ*_#a[0Dim totalColumNumbe51Testing软件测试网R)HA_5F}(Ca
'下拉框的值
chE6}f7Co|3F0checkTest1="技术预研"51Testing软件测试网&r0ah0z g/p M x} M'Z
'输入框的值从global表中获得51Testing软件测试网(nB$vp YZy
checkTest2=DataTable.RawValue("test2","Global")51Testing软件测试网xv MOc(UjR
Browser(" ").Page(" ").Frame(" ").WebList("Value0").Select checkTest1 '查找字段
#Fe}{ P~0Browser(" ").Page(" ").Frame(" ").WebEdit("Value1").Set checkTest2    '查找字段51Testing软件测试网z7@.q ~ i6Ps q`
Browser(" ").Page(" ").Frame(" ").WebButton(" ").Click
m,B~Ln\0totalRowNumber=Browser(" ").Page(" ").Frame("name:=RightBottomFrame").WebTable("class:=CommonTable CommonSubTable BugMode").RowCount
[+gvDN1P,^0'完全匹配查找,即所查找的列必须与关键字的字段一致,如果某一行不一致,则退出fail
D3?Y$?fTy9m|0For i=2 to totalRowNumber51Testing软件测试网 yXw'ftm0k9~
 '获取某列的值
Gwr1iqu0 text1=Browser(" ").Page(" ").Frame("name:=RightBottomFrame").WebTable("class:=CommonTable CommonSubTable BugMode").GetCellData(i,2)
)WttV}'x&HM@G0 51Testing软件测试网+u"q1| Q|.Z V
 '如果没有trim()方法,老是报错,不晓得为啥子,仔细看text1里面也没有空格51Testing软件测试网SI"w @ Xx0s
 
b3gG*r\5EE k:?0 If  trim(text1)=trim(checkTest1) Then51Testing软件测试网#`0PGT8S+_ X4e6zWq
  check=true
&aW0E7Yt#O)VI0 else
x(oX&C o&F0  check=false
Bh;Wi5J,H0  i=totalRowNumber
{q+A._5Vb&M:`0 End If
\[g$\,x4B0Next
'I+`p z+u y:S ^$R0'模糊查找,使用qtp自带函数RegExpTest(),经试验这里的检查作用相当于模糊查询了,不需要自己再构造正则表达式,只要存在checkTest2则返回,否则为空51Testing软件测试网'[4i$n"Ycfc"l
For j=2 to totalRowNumber
H4MG5I*Er_0 '获取某列的值 51Testing软件测试网Q4i!B4Q)s2ha9A;^&i
 text2=Browser(" ").Page(" ").Frame("name:=RightBottomFrame").WebTable("class:=CommonTable CommonSubTable BugMode").GetCellData(j,3)51Testing软件测试网oVP|0Gz7E8|0q7w
 If  RegExpTest(checkTest2,text2)<>""  Then
vg y,pfo)[7@ P0  check=true
B5H5\HvP0 else
VM#`:t h0  check=false
D!Z3db'g0  i=totalRowNumber
*Ud8s)f'AB lN0 end if51Testing软件测试网u7uqSe9b0h!n0?
Next51Testing软件测试网W$YU4V1\1l6I
If check=true Then51Testing软件测试网uO/Jf`{,u*l
 CloseMsgByTime "pass"
N YB)iv `+o5Gu0else
lj-XsIk}0 CloseMsgByTime "fail"
'N!d;o j"?1Ip0End If51Testing软件测试网7L9a5R'aM~}8d

%_+ey6MzG0Browser(" ").Page(" ").Sync
*L)y6J}i.i0Browser(" ").CloseAllTabs

k&WAl:Q.h5u8r.m0

TAG:

 

评分:0

我来说两句

Open Toolbar