51Testing软件测试论坛

标题: 对于集合对象如何处理 [打印本页]

作者: robinpipi    时间: 2013-1-16 17:02
标题: 对于集合对象如何处理
获取页面上的对象Set obj=Browser("我的主页").Page("我的主页").Frame("Frame1").WebElement("class:=detailbox")

这个获得的是多个对象,接下来如何做呢?
我一般情况下,都是通过描述性编程,获得对象集合,然后用for 循环,一个一个遍历。
想请问一下,不用描述性编程,而使用对象编程,该怎么操作得到的集合呢
作者: xjwldlover    时间: 2013-1-16 17:45
Set obj=Browser("我的主页").Page("我的主页").Frame("Frame1").WebElement("class:=detailbox")
写错了,这样只能获取1个或者0个对象。

说为对象编程,在测试web应用时指的DOM编程,可以使用dom对象的all,frams,links等属性获取对象集合。详细可以参阅w3chool关于html dom(对象属性)和xml dom(文档结构树遍历)的相关知识
作者: robinpipi    时间: 2013-1-17 16:24
那也就是说,对于多个对象来说,这么写本身就是错误的,或者用描述性编程,或者用dom编程
作者: xjwldlover    时间: 2013-1-17 17:25
那也就是说,对于多个对象来说,这么写本身就是错误的,或者用描述性编程,或者用dom编程
robinpipi 发表于 2013-1-17 16:24


QTPObject.WebElement("class:=detailbox")、对象变成、描述编程。。。我被LZ搞迷糊了。
你就直接childObjects获取对象集合吧
作者: robinpipi    时间: 2013-1-17 17:36
哦,我的描述性编程指的是Dim oWebElements,oDesc
Set oDesc=description.Create()
oDesc("micClass").value="WebElement"
oDesc("html tag").value="DIV"
oDesc("class").value="fbox"
set oWebElements=Browser("好友管理").Page("好友管理").ChildObjects(oDesc)
oCount=oWebElements.count()
这种写法,
sorry




欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2