51Testing软件测试论坛

标题: 如何点击列表中某个单元格 [打印本页]

作者: 398073412    时间: 2015-7-22 15:33
标题: 如何点击列表中某个单元格
本帖最后由 398073412 于 2015-7-23 13:27 编辑

请教:点击列表中某个单元格,使它变成编辑状态,然后赋值
我想通过WebTable.ChildItem(i,j,"WebElement",0).Click这个方法点击列表中的第i行j列单元格,使其变为webEdit对象,然后可以对其编辑赋值.
但是在运行时老是提示缺少对象,求大神解答

Set otable = Browser("登录").Page("Page").WebTable("html tag:=TABLE","class:=listTable").ChildItem(2,5,"WebEdit",0)
otable.ChildItem(2,5,"WebElement",0).click '这里报缺少对象

aaa=otable.ChildItemCount(2,5,"WebElement")
print aaa
这里返回为0,说明这个单元格没有类型为WebElement的对象,而用qtp抓出来该单元格就是WebElement我想这个列表上使用的应该不是标准的web控件,所以识别不了
[attach]96256[/attach]
或者有没有人指点一下怎么通过DOM操作实现我要的效果呢

作者: jingzizx    时间: 2015-7-23 10:02
报缺少对象就是没取到值,把所有内容都找出来,看看是不是参数的问题.
使用RowCount 方法得到 WebTable 的总行数,然后使用ColumnCount 函数得到WebTable 某行的列数。
最后遍历循环每一行和每一列,看看到底Row的 Column 分别取什么值才能得到我们需要进行操作的数据。

作者: 398073412    时间: 2015-7-23 13:18
jingzizx 发表于 2015-7-23 10:02
报缺少对象就是没取到值,把所有内容都找出来,看看是不是参数的问题.
使用RowCount 方法得到 WebTable 的总 ...

不是没有取到值,取值是可以正确取到的,我用GetCellData(2,5)都能正确取到这个单元格的值
现在的问题是要对这个单元格进行双击,使它变为编辑状态,然后输入字符,而不是取的该单元格的值
otable.ChildItem(2,2,"WebElement",0).click 报缺少对象的原因应该是这第二行第五列单元格中找不到类型为WebElement的对象吧,
因为aaa=otable.ChildItemCount(2,5,"WebElement")返回0,说明这个单元格没有对象
这个列表单元格中使用的不是标准的web控件吧,这样的情况还有其它什么方法可以实现呢
(我现在猜想可能要DOM方法实现,知道我不熟悉这个,有人可以指导一下吗)下面这个截图是这个列表的结构
[attach]96255[/attach]
因为不是标准的web控件,qtp识别不到,请教大家要怎么实现





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