Vbscript 创建新方法

Vbscript 创建新方法,vbscript,qtp,hp-uft,Vbscript,Qtp,Hp Uft,我正在与HP UFT合作。此工具使用VBScript自动测试。 是否可以在函数库中创建新方法。 我的意思是这样的 Browser("Browser").Page("Page").WebEdit("login").MyMethod() 如何操作?进入设计菜单,选择函数定义生成器… 您将获得以下UI 基本上,这是一个帮助 通过选择注册到测试对象的复选框(以及测试对象的类型),您添加的功能将作为常规测试对象功能可用 请注意,您可以覆盖现有函数,例如,您可以更改设置以查看值是否为“~today~”添

我正在与HP UFT合作。此工具使用VBScript自动测试。 是否可以在函数库中创建新方法。 我的意思是这样的

Browser("Browser").Page("Page").WebEdit("login").MyMethod()

如何操作?

进入设计菜单,选择函数定义生成器… 您将获得以下UI

基本上,这是一个帮助

通过选择注册到测试对象的复选框(以及测试对象的类型),您添加的功能将作为常规测试对象功能可用


请注意,您可以覆盖现有函数,例如,您可以更改
设置
以查看值是否为
“~today~”
添加今天的日期。

转到设计菜单,然后选择函数定义生成器… 您将获得以下UI

基本上,这是一个帮助

通过选择注册到测试对象的复选框(以及测试对象的类型),您添加的功能将作为常规测试对象功能可用


请注意,您可以覆盖现有函数,例如,您可以更改
Set
以查看值是否为
“~today~”
添加今天的日期。

添加用户定义的函数实际上相当简单:定义函数,决定要将函数添加到的对象类型,并使用RegisterUserFunc将其组合在一起:

Function BrokenImage(ImageObject)
BrokenImage = True
ImageObject.WaitProperty "visible", True, 1000
ImageLoaded = False
StartTime = Now()
Do
    If ImageObject.Object.naturalHeight > 0 And ImageObject.Object.naturalHeight > 0 Then
        BrokenImage = False
        Exit Do 
    End If
    If DateDiff("s", StartTime, Now()) > 10 Then Exit Do
Loop While ImageLoaded = False
End Function 

RegisterUserFunc "Image", "BrokenImage", "BrokenImage"
一旦定义了函数,就可以像调用任何其他对象方法一样调用它:

If Browser().Page().Image().ImageBroken() = true Then Print "Broken Image"

您还可以添加其他参数,这些参数随后将传递给新方法。

添加用户定义的函数实际上非常简单:定义函数,决定要将函数添加到的对象类型,然后使用RegisterUserFunc将其组合在一起:

Function BrokenImage(ImageObject)
BrokenImage = True
ImageObject.WaitProperty "visible", True, 1000
ImageLoaded = False
StartTime = Now()
Do
    If ImageObject.Object.naturalHeight > 0 And ImageObject.Object.naturalHeight > 0 Then
        BrokenImage = False
        Exit Do 
    End If
    If DateDiff("s", StartTime, Now()) > 10 Then Exit Do
Loop While ImageLoaded = False
End Function 

RegisterUserFunc "Image", "BrokenImage", "BrokenImage"
一旦定义了函数,就可以像调用任何其他对象方法一样调用它:

If Browser().Page().Image().ImageBroken() = true Then Print "Broken Image"
您还可以添加其他参数,这些参数随后将传递给新方法