QTP 封装的原理: 对象库是怎么样实现的.

来源:互联网 发布:js面向对象的特点 编辑:程序博客网 时间:2024/06/08 13:31

QTP 对象封装的原理:

 

1.       使用对象库 与 描述性编程 本质是一样的:

 

‘首先看对象库.TO(test object)也是根据存储在对象库的属性值列表来找RO(runtime object)的:

 

‘说明所有的TO可以用描述性编程来找到对象, 比如上面TO:

Set TOObject = Browser("百度一下,你就知道").Page("百度一下,你就知道").Link("新 闻")

Set DPObject = Browser("CreationTime:= 0").Page("Title := 百度一下,你就知道").Link("Text : = 新 闻","Html tag : = A")

 

‘而该对象又可以通过HTML DOM接口来实现:

Set obj = Browser("CreationTime:= 0").Page("Title := 百度一下,你就知道"). Document. GetElementsByTagName("A")

For i = 0 To obj.Length

   If obj(i).innerText = "新 闻" Then

      Exit For

   End If

Next

Set DOMObject =  obj(i)

 

2.       所有封装的对象基于IE对编程语言的接口实现的: 

既然所有的对象通过HTMLDOM来找到的,那么QTP是怎么样封装的?应该是用IE COM接口来实现的, 我们假设上面那个对象:

Set objIE = CreateObject("InternetExplorer.Application")

objIE.Visible = True

objIE.Navigate "http://www.baidu.com"

Set  obj =   objIE.Document.GetElementsByTagName("A")

For i = 0 To obj.Length

   If obj(i).innerText = "新 闻" Then

      Exit For

   End If

Next

Set COMObject =  obj(i)

 

 

 

 

 

               

 

 

 

 

 

 这样我们发现不用QTP, 单纯用VBS就来实现我们想要的操作.所以,以此推断, 一切的对象是可以通过IE基于编程语言接口得到的.

原创粉丝点击