QTP訪問DOM的方法

發表于:2009-05-09來源:作者:點擊數: 標簽:qtpQTPDOM訪問
在使用QTP 測試 WEB頁面時,經常需要利用測試對象中的Object屬性來訪問和操作DOM,因此,QTP 自動化測試 工程師非常有必要掌握一些常用的DOM知識。 QTP支持直接訪問DOM(Document Object Model),可以通過DOM來訪問HTML標簽。在QTP中,訪問DOM是通過使用Pag

在使用QTP測試WEB頁面時,經常需要利用測試對象中的Object屬性來訪問和操作DOM,因此,QTP自動化測試工程師非常有必要掌握一些常用的DOM知識。

   QTP支持直接訪問DOM(Document Object Model),可以通過DOM來訪問HTML標簽。在QTP中,訪問DOM是通過使用Page測試對象的Object屬性來進一步訪問的。

 下面就列舉了一些常用的DOM屬性、方法和集合:

  常用DOM 屬性

  ● className.同一樣式規則的元素用相同的類名??梢酝ㄟ^className快速過濾出一組類似的元素。

  ● document.用于指向包含當前元素的文檔對象。

  ● id.當前元素的標識。如果文檔中包含多個相同id的元素,則返回一個數組。

  ● innerHTML.用于指向當前元素的開始標記和結束標記之間的所有文本和HTML標簽。

  ● innerText.用于指向當前元素的開始標記和結束標記之間的所有文本和HTML標簽。

  ● offsetHeight, offsetWidth.元素的高度和寬度。

  ● offsetLeft, offsetTop.當前元素相同對于父親元素的左邊位置和頂部位置。

  ● outerHTML.當前元素的開始標記和結束標記之間的所有文本和HTML標簽。

  ● outerText.當前元素的開始標記和結束標記之間的所有文本,但不包括HTML標簽。

  ● parentElement.當前元素的父親元素。

  ● sourceIndex.元素在document.all集合中的索引(index)。

  ● style.元素的樣式表單屬性。

  ● tagName.當前元素的標簽名。

  ● title.在IE中,代表元素的tool tip文本。

  常用DOM 方法

  ● click().模擬用戶對當前元素的鼠標點擊。

  ● contains(element).用于判斷當前元素是否包含指定的元素。

  ● getAttribute(attributeName, caseSensitive).返回當前元素所包含的某個屬性,參數attributeName為屬性名、caseSensitive表示是否大小寫敏感。

  ● setAttribute(attributeName, value, caseSenstive). 設置當前元素的屬性。

  常用DOM 集合

  ● All[].當前元素中包含的所有HTML元素的數組。

  ● children[].當前元素包含的子元素。

 

例如下面的腳本獲取到Google主頁中的:

On Error Resume Next
Set Doc = Browser("Google").Page("Google").Object
' 循環獲取Page中的所有對象
For Each Element In Doc.all
       TagName = Element.TagName ' 獲取標簽名 
       InnerText = Element.innerText ' 獲取inner text.
       ' 把信息寫入測試結果 
       Reporter.ReportEvent 0, TagName, InnerText
Next

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97