(转)QTP关键技术—Test和Top-Level Action间参数传递

上一篇 / 下一篇  2009-03-20 14:20:15 / 个人分类:QTP

以下讲述一个关于QTPTest参数和Top-Level Action参数的使用例子,

        有些人不知道这个参数做什么用的,尤其是Test的output不知道怎么取。

        其实它是外部对象传给它的(这个外部对象可以是Quality Center,也可以是vbs这样的驱动程序)。

        以下给大家讲解一个关于QuickTest的Flight的例子。

        首先,在QTP里录制一段脚本,代码如下:

        SystemUtil.CloseProcessByName "Flight4a.exe"

        SystemUtil.Run Environment.Value("ProductDir") & "\samples\flight\app\flight4a.exe"

        Dialog("Login").WinEdit("Agent Name:").Set Parameter("InAction1")

        Dialog("Login").WinEdit("Password:").SetSecure "46f1f4259cf01348f5a4c630bcee96084f3d1619"

        Dialog("Login").WinButton("OK").Click

        Window("Flight Reservation").Close

        Parameter("OutAction1") = true

        然后在QTP中进行参数设置,

        1)设置Action的参数

        鼠标选中Keyword View中的Action1,

        点右键---Action Property,

        在Parameters的Tab标签下,分别加入:

        输入参数 InAction1 ,类型String;

        输出参数 OutAction1,类型 Boolean。

        2)设置Test的参数

        在QTP的菜单File--->>Settings的Parameters的Tab标签下,分别加入:

        输入参数 InTest1 ,类型String;

        输出参数 OutTest1,类型 Boolean。

        3)将Test和Action间参数进行关联传递

        鼠标还是选中Keyword View中的Action1,点右键,

        这次点“Action Call Properties”,

        在Parameter Values里进行参数化传递设置,

        把InTest1的值传递给InAction1,

        把OutAction1的值传递给OutTest1。

        以上设置完毕后,点“保存”,保存到C:\下,存为Test1好了。

        最后,在你的硬盘上新建一个vbs文件,文件内容如下:

        Dim qtApp ,pDefColl,pDef ,rtParams,rtParam

        Set qtApp = CreateObject("QuickTest.Application")

        qtApp.Launch

        qtApp.Visible = True

        qtApp.Open "C:\Test1"

        Set pDefColl = qtApp.Test.ParameterDefinitions

        cnt = pDefColl.Count

        Indx = 1

        While Indx <= cnt

            Set pDef = pDefColl.Item(Indx)

            Indx = Indx + 1

        Wend

        Set rtParams = pDefColl.GetParameters()

        Set rtParam = rtParams.Item("InParam1")

        rtParam.Value = "songfun"

        qtApp.Test.Run , True, rtParams

        MsgBox rtParams.Item("OutParam1").Value

        做完这步之后,保存这个vbs文件,双击执行这个vbs文件,你会发现它自动启动了QTP,而且进行了自动测试,最后还取到了运行成功与否的布尔值。

        这就是关于Test、Top-Level Action参数使用的例子,它的参数的整个传递过程是:

        外部vbs文件 传参数给QuickTest的Test的输入参数InTest1,然后InTest1传参数到InAction1去驱动了Action1的测试

        然后通过这个Action1得出了OutAction1的值,然后通过OutAction1传给OutTest1,最后再传回到vbs文件中。

        示例用MsgBox来打出重新传回到vbs文件中的字符串。


TAG:

 

评分:0

我来说两句

Open Toolbar