QTP描述性编程 - 加载通过函数创建的对象

时间:2014-07-04 05:04:24

标签: vbscript qtp hp-uft

我有10个不同的测试用例。我想在函数中创建不同的SwfEdit,SwfButton等对象,然后在QTP中使用不同的操作。

我尝试创建一个函数并将其链接到一个测试用例,但是它没有用。 所以我不确定在所有测试用例中链接所有这些对象的正确方法。

2 个答案:

答案 0 :(得分:1)

如果您坚持在代码中创建对象而不是使用对象存储库,则需要将这些对象存储在某种类型的全局变量中。一个基本的例子可能是函数库:

' Declare your global variable to hold the object
Public MyObject

' Create your object from a function
Public Sub InitializeGlobalObject()

    ' Use Descriptive Programing to create your object
    Set MyObject = Window("title:=something").Button("index:=0")

End Sub

这将允许您创建一次对象,然后通过变量

引用它
' Click the button
MyObject.Click

您可能遇到缓存这样的对象的问题,因为它会倾向于保留它匹配的最后一个屏幕对象,而对象存储库将在每次调用它时刷新屏幕对象。您可能需要先在对象上调用“刷新”方法,然后才能在屏幕上显示它之后首次使用它。

答案 1 :(得分:0)

如果您不打算使用描述性语言,则应首先使用对象存储库添加对象。 你应该监视每个对象,然后添加它。