发布新日志

  • 【转】QTP关键技术—Test和Top-Level Action间参数传递

    2010-06-04 10:46:17

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

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

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

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

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

            SystemUtil.CloseProcessByName "Flight4a.exe"

            SystemUtil.Run Environment.Value("ProductDir") & "\samples\flightapp\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文件中的字符串

  • 【转】远程电脑中运行QTP自动化程序

    2010-02-10 16:09:51

    默认情况下,当你在自动化程序中创建一个Application对象时,该对象创建于本地电脑中(使用QTP的本地副本)。你也可以选择在远程QTP电脑中运行自动化脚本。为了实现这个目标,你必须:

    1.保远程电脑的Distributed COM(DCOM)配置属性已设置为允许你运行QTP自动化脚本。

    2.自动化程序的创建Application对象的脚本行,指定远程电脑的名称,例如在VBscript的CreateObject函数中使用可选参数location。

    名词:

    COM-组件对象模型。COM提供了一套允许同一台计算机上的客户端和服务器之间进行通信的接口。

    DCOM-分布式组件对象模型。是一系列微软的概念和程序接口,利用这个接口,客户端程序对象能够请求来自网络中另一台计算机上的服务器程序对象。

    设置远程电脑中的DCOM配置属性

    要在远程电脑中运行自动化程序,必须确保在远程电脑的DCOM设置中,给了你装载及设置QTP COM 服务器的权限。

    下面描述了在远程电脑中设置DCOM的过程。注意因为远程电脑的操作系统的不同,DCOM配置对话框中显示可能不同。

    (下面的图片都是WinXP操作系统中的):

    1.在远程电脑中,选择Start>Run,打开Run对话框。

    2.在命令栏输入“dcomcnfg”后,点击OK,打开DCOM配置对话框或组件服务窗口(这与操作系统有关),并显示当前电脑中有效的COM应用程序。

    3.在列表中选择“QuickTest Professional Automation”,打开属性对话框。

    4.在QuickTest Professional Automation对话框中,选中Security(安全)页签。

    5.在“launch permissions”(启动和激活权限)部分,选择custom(“自定义”)选项,然后点击EDIT(“编辑”)按钮。

    6.使用Add及Remove操作选择网络用户或组,让用户或组就可以在本地电脑中通过自动化程序,远程让QTP脚本在本电脑上运行。当完成设置用户或组后,点击OK保存设置。

    7.重复5、6步,设置“configuration permissions”部分,设置用户或组,让用户或组可以通过自动化程序,远程修改本电脑的QTP的选项配置。

    8.在QuickTest Professional Automation对话框中,点击Identity(标识)页签,选择interactive user选项。

    9.点击OK保存QuickTest Professional Automation属性设置。

    10.点击OK关闭DCOM配置对话框,或关闭组件服务窗口。

    在远程电脑中创建Application

    当远程电脑的DCOM设置完成后,你就可以在自动化程序中指定该远程电脑。

    在VBscrīpt中,你可以在CreateObject函数的可选参数location中指定远程电脑名称。例如:在一个名为MyServer的远程电脑上运行自动程序,你可以编写以下脚本:

    Dim qtApp

    Set qtApp=CreateObject(“QuickTest.Application”,”MyServer”)

Open Toolbar