QTP对象识别的问题
相同的一个对象,为何QTP会识别成Dialog("节点登记")
Dialog("节点登记_1")
Dialog("节点登记_2")
Dialog("节点登记_3")
Dialog("节点登记_4")
Dialog("节点登记_5")
对象是完全相同的,怎样取消这种识别呢?请大家指教 假如同一属性,他们的index是不一样的。楼主可以打印出来看看。 如果是C/S架构的呢? 也有Index吗?该怎么解决呢 本帖最后由 阳光下的橙子 于 2011-3-11 22:50 编辑
你这个可能是C/S架构的吧,因为有多个对象都叫节点登记,但是诚如楼上所言,他们的index不同(也有可能是其他属性,但一定有一个unique property,你可以在对象库里进行操作,对象的名字是可以随便你修改的,然后去掉多余的相当属性,把唯一的那一个添加进去,就OK了 可能是多次录制的结果 在Tools-Object Identication里设置对象识别的的属性。 你这个可能是C/S架构的吧,因为有多个对象都叫节点登记,但是诚如楼上所言,他们的index不同(也有可能是其 ...
阳光下的橙子 发表于 2011-3-11 22:47 http://bbs.51testing.com/images/common/back.gif
添加完唯一的属性后是不是需要用描述性编程吗,具体的语句能举个例子吗?望解答。。。谢谢 知道的帮忙再回复一下。。。 回复 7# solar灬
QTP在录制对象时候,一般会给这个对象添加2-3个属性,但这个2-3个属性并不一定能够成为该对象的unique属性,也就是不能识别。
我举个例子,A,B,C三个按钮,他们有3个属性,分别叫text,href,outid
但是他们的这三个属性值都一样,分别为1,2,3,QTP在录制的时候,添加了这3个属性,但没办法通过这三个属性去识别这三个按钮(因为都一样),所以需要通过object spy来观察,有可能他们的unique property是一个叫session id的属性,然后把这个添加进去,就可以识别了。(以上是针对WEB的一些经验之谈) 我也遇到同样的问题,表格中“账号管理”链接是同一属性,他们的index是不一样,但是回放的时候没法按照对应的名称所在行的“账号管理”链接,只能按照index定位,不知道如何修改? 如果你确认在页面上获取的是同一个页面元素,可以使用描述性和正则表达式试试看:
例如:你的对象name属性值为:节点登记,那么实现关闭Dialog动作为:
Dialog("name:=节点登记","index:=^\d+$").close
页:
[1]