51Testing软件测试论坛

标题: QTp中多个同名的WEBELEMENT或WEBTALBE怎么区分识别? [打印本页]

作者: kasad    时间: 2011-5-19 14:14
标题: QTp中多个同名的WEBELEMENT或WEBTALBE怎么区分识别?
本帖最后由 kasad 于 2011-5-19 15:05 编辑

如题
作者: kasad    时间: 2011-5-19 14:15
本帖最后由 kasad 于 2011-5-19 15:04 编辑


作者: iQuickTest    时间: 2011-5-19 16:33
如果识别属性完全一样,那只能用index了
作者: kasad    时间: 2011-5-19 16:38
index每次创建 也不同
作者: lyscser    时间: 2011-5-19 17:53
index每次创建 也不同
kasad 发表于 2011-5-19 16:38



至少每次看到的页面排序规则是一致的吧,如果index不行就用正则表达式去匹配url,innertext啥的
作者: kasad    时间: 2011-5-20 10:59
url,innertext也是一样
除了div中id不同
但id是动态的
作者: wolaizhinidexin    时间: 2011-5-21 16:32
本帖最后由 wolaizhinidexin 于 2011-5-22 11:32 编辑

WEBELEMENT   试试将QTP的智能识别设成开启
WEBTABLE        
试试从Page中ChildObject所有webtable对象,然后根据每个webtable对象的某个单元格的值或属性的值,用正则表达式匹配时,返回它的拥有你指定值的webtable的index值,然后再根据你指定的index,操作webtable对象,如:
根据指定的值,返回你需要的webtable对象是第几个
fuction bb(obj,pointstr)
Dim c
set b= page().ChildObject()

            for i=0 to b.count-1
               
                 if RegTest(pointStr,b.getcelldata(2,1) then
                     c=i
                     exit for
                 end if
            next
bb=c
end function
然后就可以使用上面函数产生的index了。
obj.webtalbe(index:=bb(obj,pointStr).GetCellData(2,2)

注意,以上是随手写的,相关方法和值,自己编写下吧
作者: kasad    时间: 2011-5-23 11:37
谢谢 wolaizhinidexin
我试试




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