51Testing软件测试论坛

标题: 描述性编程的错误 [打印本页]

作者: 隐形人    时间: 2008-6-10 20:42
标题: 描述性编程的错误
在录制的模式下,生成的代码是:
Browser("aaaa").Page("bbb").Frame("frame").Link("ccc").Click
使用描述性编程的方法1替代:
Browser("描述性编程字符串").Page("描述性编程字符串").Frame("描述性编程字符串").Link("描述性编程字符串").Click
回放时报错:
cannot identify the object "Link" (of class Link). Verify that this object's properties match an object currently displayed in your application.
本人声明这里的描述性编程字符串的字符串的属性值都是用SPY来获取的,所以不会存在问题的

使用描述性编程的方法2替代:
Browser("描述性编程字符串").Page("描述性编程字符串").Link("描述性编程字符串").Click
还是报同一个错误。
高手帮忙解决一下!
作者: lantianwei    时间: 2008-6-10 20:54
描述性编程字符串 可能不唯一
作者: hsjzfling    时间: 2008-6-11 00:39
根据错误提示来看,不是描述属性不唯一,而是描述属性和运行过程中对象的实际属性不匹配~~
那么错误的原因就应该是你没有选择恰当的识别属性

选择识别属性的要点我认为主要有两个
1、唯一性,选择的属性应确保能和其它对象区分开来,保证对象的唯一性
2、确定性,选择值不会变化的属性,或者说值是在可控制的规律下变化的属性
作者: 隐形人    时间: 2008-6-11 09:29
问题最大的可能是出在:我们录制的时候qtp识别的是frame(实际是webtable表里的一个字段值)。这里的LINK和普通情况下的LINK不一样,所以问题可能邮在FRAME上,请问各位有没有遇到这样的问题,这样问题的解决方案又是什么?
作者: hsjzfling    时间: 2008-6-11 19:13
建议LZ给出点截图吧,结合截图来描述问题,别人更容易理解帮助发现所在。

回到描述性编程的问题,报错是说你所描述的Link对象在被测程序中没找到,如果你启用了智能识别的话那么也不排除是父层对象找错了的情况。你主要需要注意的就是我在3楼提到的那两点.如果自己确实调试不出问题来,那么可以把你的描述性编程语句发来看看,结合各对象的实际属性(截图)与可能变化的情况,我们可以一起来分析下。




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