[转载]QTP的Test参数以及顶级Action参数的使用
上一篇 / 下一篇 2008-12-18 15:15:26 / 个人分类:qtp
1208328177
- 自动化测试:
- 测试文档:
网上有些关于如何使用Action参数的文章,不过关于QTP的Test参数和Top-Level Action参数的使用例子几乎没有。51Testing软件测试网?Aaa!d7PR5P9l5g
有些人甚至不知道这个参数做什么用的,尤其是Test的output不知道怎么取。51Testing软件测试网3c/E1n,r{g#D#Q2}!_
其实它是外部对象传给它的(这个外部对象可以是Quality Center,也可以是vbs这样的驱动程序)。51Testing软件测试网
Q\ YC2q9]
以下给大家讲解一个关于QuickTest的Flight的例子。
zR!qS a5EDU0首先,在QTP里录制一段脚本,代码如下:
代码:
SystemUtil.Run "C:\Program Files\Mercury\QuickTest Professional\samples\flight\app\flight
6Ss/j[6`2[X/~#J0Dialog("Login").WinEdit("Agent Name:").Set Parameter("InAction1")51Testing软件测试网 J+l)FQ}S\
wait 5
%YwE1EV0Dialog("Login").WinEdit("Agent Name:").Type micTab51Testing软件测试网;\4{/w ZOK m
oK1r
Dialog("Login").WinEdit("Password:").SetSecure "
.hLS ?i+LE0Dialog("Login").WinEdit("Password:").Type micReturn51Testing软件测试网'iE |isIw"qb
Window("Flight Reservation").Close51Testing软件测试网s
ZwiY'I7yJ
Parameter("OutAction1") = True
然后,鼠标选中Keyword View中的Action1,点右键---Action Property,在Parameters的Tab标签下,分别加入:输入参数InAction1,类型String;输出参数OutAction1,类型Boolean。如下图。
,B3t4`:l/j0再然后,在QTP的菜单File--->>Settings的Parameters的Tab标签下,分别加入:输入参数InParam1,类型String;输出参数OutParam1,类型Boolean。如下图。
2Vgcmn9[0接着,鼠标还是选中Keyword View中的Action1,点右键,这次点“Action Call Properties”,在Parameter Values里进行参数化传递设置,把InParam1的值传递给InAction1,把OutAction1的值传递给OutParam1。如下图。51Testing软件测试网%B h1|/L%D#nV\
以上设置完毕后,点“保存”,保存到C:\下,存为Test1好了。
k!O8W$bh!D
wD}Vp051Testing软件测试网5xZ$qQE?
最后,在你的硬盘上新建一个vbs文件,文件内容如下:
复制内容到剪贴板
代码:
Dim qtApp ,pDefColl,pDef ,rtParams,rtParam51Testing软件测试网0@OSQ6^"S(m"f
Set qtApp = CreateObject("QuickTest.Application")51Testing软件测试网Z!E%N'gFZCV
qtApp.Launch51Testing软件测试网/|
l7J NbI.tb
qtApp.Visible = True51Testing软件测试网+LW6vh4g'f:l
qtApp.Open "C:\Test1"51Testing软件测试网/c:vt'eL(p/_,Qv
Set pDefColl = qtApp.Test.ParameterDefinitions51Testing软件测试网hp"tRx
cnt = pDefColl.Count
c
x9q8kS4|/z)B7a7k0Indx = 151Testing软件测试网$hv0qt+_8^
While Indx <= cnt51Testing软件测试网[X!p v/}ob@
Set pDef = pDefColl.Item(Indx)
.{0B@Y9K7J9L*K(YRv8b-r0 Indx = Indx + 151Testing软件测试网'CC+fkivXQY
Wend51Testing软件测试网
I D^_^
SUz$s
Set rtParams = pDefColl.GetParameters()51Testing软件测试网 tCWTV5hJ
fH
Set rtParam = rtParams.Item("InParam1")51Testing软件测试网sm~7YY!?~/T
rtParam.Value = "songfun"51Testing软件测试网V"Q&M