51Testing软件测试论坛

标题: Page对象识别 [打印本页]

作者: Linda0721    时间: 2008-12-28 16:19
标题: Page对象识别
在使用 index 来识别 page 时出现问题:
语句:Browser("CreationTime:=0").Page("Index: = 0").Object.links
出错信息:The "Index: = 0" object was not found in the Object Repository.
                    Check the Object Repository to confirm that the object exists or to find the correct name for the object.
                    Line (18): "Set pageLinkList0 = Browser("CreationTime:=0").Page("Index: = 0").Object.links".

请问用CreationTime,Index的方式来确定对象 一定要在对象库中有对象吗?
注:采用描述性编成,没有录制,所以对象库中没有内容
作者: sangjf    时间: 2008-12-29 09:26
index属性是qtp用来区分属性相同的对象的标志,也就是说这个属性是qtp自己为了区分对象而加上去的,在实际中并不存在。在用index属性时,必须指明要识别的其他属性的值,比如
Browser("title:=.*").page("name:=xx","index:=0")指的是页面name属性为xx,最先生成的页面。
打个比方:你要找一个姓王的人,他是市场部的或者是研发部的。你可以说找市场部或研发部的小王,但你不能说找市场部或研发部。
作者: dreamever    时间: 2008-12-29 09:30
二楼正解,顶!
作者: Linda0721    时间: 2008-12-29 10:18
感谢楼上两位,我还有两个不太明白的地方需要请教:
1.如果:Browser("CreationTime:=0").Page("title:=xx","Index:=1"). 那么,Index=1的page 在一个browser里边具体是指什么样的情况, 是像IE7那样的很多的tab,第一个是 Index =0, 第二个是 Index =1吗?还是有其他情况。
2.如果是要描述 :在一个打开的Browser里边的一个网页上的所有链接 应该如何表示呢?
注:当前只有一个浏览器并且只有一个页面打开,不能确定Page的其他属性,包括title,仅知道该网页的URL
像这样写:Browser("CreationTime:=0").Page("URL:=YY","Index: = 0").Object.links
还有其他方法吗?

谢谢
作者: sangjf    时间: 2008-12-29 11:02
第一个问题:没用过index来标志page,所以不太清楚。
第二个问题:用childobject来处理,具体做法可以参考qtp的帮助文档,论坛上也有很多类似的帖子可以参考
作者: Randall    时间: 2008-12-30 20:07
Browser("CreationTime:=0").Page("Index: = 0").Object.links
把冒号后面的空格去掉就可以了
Browser("CreationTime:=0").Page("Index:= 0").Object.links
作者: j44jj44j    时间: 2008-12-31 09:51
学习一下
作者: zhangxinnow    时间: 2009-1-5 14:16
同意2楼




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