笨鸟求助:使用描述性编程,总是报错:对象不支持该属性或方法。
由于网页上显示的用户名总是变化的,所以我想通过描述性编程的方法找到页面上固定位置的对象。但运行时总报错:对象不支持该属性或方法。"Browser(...).Page(...).WebElement
测试程序如下:
set Desc = Description.creat()
Desc("x").value=28
Desc("y").value=230
Desc("width").value=708
Browser("交流中心")Page("交流中心").WebElement(Desc)
用object spy 查看过对象,确实显示类型为 webElement。
什么问题,我该怎么办 本帖最后由 cellule 于 2012-4-20 16:19 编辑
Browser("交流中心")Page("交流中心").WebElement(Desc)
你复制过来的时候少个点?还是本来就没?
你这个用户名没有别的唯一属性吗? 用description描述 最好用class,title,name,innertext等进行描述,用x,y很不稳定的,如果这个对象是在table或者frame中最好定位精确点. 同意Shawn_xiao的观点,少用位坐标来确定对象,多用name等属性。 本帖最后由 caohx 于 2012-4-23 14:08 编辑
因为控件位置是固定的,而其上的内容是变化的,所以才使用了坐标描述对象。
由于网页上显示的用户名总是变化的,所以我想通过描述性编程的方法找到页面上固定位置的对象。
但运行时总报错:对象不支持该属性或方法。"Browser(...).Page(...).WebElement
测试程序如下:
set Desc = Description.creat()
Desc("x").value=28
Desc("y").value=230
Desc("width").value=708
set obj=Browser("交流中心")Page("交流中心").ChildObject(Desc)
obj.GetRoProperty("innertext") //这一步报错,说补支持该属性和方法 为啥不支持啊?
调试中试图在bubug view窗口中产看对象obj的属性,但更本就没有列出属性,咋办啊 二楼已经提示过了.你Browser("交流中心")Page("交流中心").ChildObject(Desc)这里缺个点.Browser和Page中间.试试看看 to 2楼、6楼。我的程序里没有少点。
那个点是我写帖子时漏掉的。 to 2楼、6楼。我的程序里没有少点。
那个点是我写帖子时漏掉的。
caohx 发表于 2012-4-24 12:28 http://bbs.51testing.com/images/common/back.gif
obj.GetRoProperty("innertext") 在这步之前你找出来的obj对象肯定是不存在的,你可以debug看一下啊。既然这个对象都不存在,怎么能够使用GetRoProperty("innertext") 这个方法呢? 因为控件位置是固定的,而其上的内容是变化的,所以才使用了坐标描述对象。
由于网页上显示的用户名总是变 ...
caohx 发表于 2012-4-23 14:07 http://bbs.51testing.com/images/common/back.gif
我不相信这个控件会连class这个属性都没有,还有至少还有html tag这个属性也该是固定的吧。 实在不行你用Index属性定位该控件 create 呵呵,都没说道电子上,应该是Desc("abs_x").value=28
Desc("abs_x").value=29吧 回复 12# csj
我表示我也错了
页:
[1]