3.2.3.1 如何在QTP中使用DOM
前面已经简单介绍了DOM在QTP中的好处,以及DOM与IE对象模型结合使用的应用,那么这一节就来看一下具体如何在QTP中使用DOM来获取并控制测试对象。
当在编写QTP脚本时,首先该做的就是将需要控制的测试对象添加到对象库,添加完毕后即可使用QTP的封装方法来控制测试对象。如果需要在QTP中访问DOM,就只需要使用Page对象,并调用Page对象的Object封装属性,QTP就能够访问到顶层DOM对象。
QTP中访问DOM对象的方法:
'获取DOM对象 Set sDom = Browser(" ").Page(" ").Object |
3.2.3.2 如何在QTP中使用DOM操控各类HTML元素
1.WebEdit对象
HTML源代码样例:
<INPUT type ="text" value="QuickTest" id="ID_001" name="NAME_001" > |
QTP中代码样例。
操控方式1:
‘获取DOM对象 set oDocument = Browser("Browser").Page("Page").Object ‘使用GetElementByID获取对象元素,并更改文本框WebEdit的value属性值 oDocument.getElementById("ID_001").value = "zzxxbb112" |
'获取DOM对象 set oDocument = Browser("Browser").Page("Page").Object '使用GetElementsByName获取对象元素,并更改文本框WebEdit的value属性值 oDocument.getElementsByName("NAME_001")(0).value = "zzxxbb112" |
'获取DOM对象 set oDocument = Browser("Browser").Page("Page").Object '如果ID和name都是空的,可以使用getElementsByTagName Set allElements = oDocument.getElementsByTagName("INPUT") For each element in allElements If element.value="QuickTest" Then element.value="zzxxbb112" End If Next |
2.WebButton / Link对象
HTML源代码样例:
<input type = "Button" id = "ID_001" name = "name_001" value = "click this"> |
QTP中代码样例。
操控方式1:
'获取DOM对象 set oDocument = Browser("Browser").Page("Page").Object '使用GetElementByID获取按钮对象并触发onclick事件 oDocument.getElementById("ID_001").click |