51Testing软件测试论坛

标题: 【已解决】Extjs中的可编辑的DataGrid对象的唯一标识问题,急切盼望解决 [打印本页]

作者: threes    时间: 2008-9-21 22:59
标题: 【已解决】Extjs中的可编辑的DataGrid对象的唯一标识问题,急切盼望解决
刚接触QTP,最近测试的一个系统是用Extjs做的,在用QTP编写脚本的时候,遇到了一个问题
在ExtJs的可编辑DataGrid中,里面的WebElement和WebEdit都没有一个实用的唯一性标识,让我大费脑筋
我是先录制,然后修改脚本的
对于里面的对象,我开始用了一个超级笨的方法,就是用abs_x,abs_y来标识,即
Browser("XXX管理系统").Page("XXX管理系统").Frame("Frame").WebElement("abs_x:=301","abs_y:=338").Click
Browser("XXX管理系统").Page("XXX管理系统").Frame("Frame").WebEdit("ext-comp-1003").Set "111111"
但是这种方法只是一个缓兵之计,非常不实用
大家有测试过这种用ExtJS做的系统吗?你们遇到这个问题的时候,都是怎么解决的?
这个问题困扰我老长时间,非常期盼能够得到解答
先谢谢各位了

[ 本帖最后由 threes 于 2008-9-25 23:40 编辑 ]
作者: rcpp    时间: 2008-9-22 10:34
你不是要告诉我们连html代码都不是唯一识别吧?
作者: ziheng198688    时间: 2008-9-22 14:25
楼主可以尝试用描述性编程的index试一下
Browser("XXX管理系统").Page("XXX管理系统").Frame("Frame").WebElement("html tag:=TD","index:=i").Click
作者: threes    时间: 2008-9-22 19:25
标题: 回复 2# 的帖子
不幸的是 确实用html都唯一不了
作者: rcpp    时间: 2008-9-22 19:26
把页面保存下来,附件贴一下
作者: threes    时间: 2008-9-22 19:29
回复 3# 的帖子
我也想过用index,但是不知道怎么确定当前的WebElement是第几个,我用object spy看,看不到。ordinal identifier 选的是index,新手 不要见笑

[ 本帖最后由 threes 于 2008-9-22 19:48 编辑 ]
作者: threes    时间: 2008-9-22 19:45
页面内容不好透露 呵呵 希望谅解 我就说一下grid部分的代码<DIV class=ext-grid-mask id=dataGrid
      style="WIDTH: 750px; HEIGHT: 185px"></DIV> 然后通过js来操作ext的api生成grid的内容,所以每个WebElement和WebElement的html都是一样
但是我发现在Run-time object的属性中,有个sourceIndex貌似可以唯一识别,但是我怎么引用这个属性呢?

[ 本帖最后由 threes 于 2008-9-22 20:22 编辑 ]
作者: threes    时间: 2008-9-25 21:43
顶一下 希望高手给解答
作者: threes    时间: 2008-9-25 23:39
找到解决办法了 谢谢各位的回答 考虑到用extjs的不是很多 今天就暂不贴上了 解决思路我整理一下随后附上 方便后来者吧
作者: topor    时间: 2008-10-9 10:45
LZ的解决方案涅?不是随后附上的嘛
作者: waluojia    时间: 2008-10-14 15:08
标题: LZ未免太吊大家的胃口了吧?
怎么还藏着掖着的!!!
作者: waluojia    时间: 2008-10-27 02:08
标题: 这个哥们有点意思……没影了
rt




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