51Testing软件测试论坛

标题: 求助一个找webTable对象的问题 [打印本页]

作者: maxtry    时间: 2011-4-14 15:16
标题: 求助一个找webTable对象的问题
本帖最后由 maxtry 于 2011-4-14 15:20 编辑

小弟遇到这么一段类似下面的html
  1. <div id="a">
  2. <div class="c1">
  3.    ***
  4.    ***
  5.    ***
  6.     <div class="c2">
  7.       <table>
  8.          <tbody>
  9.               ***********
  10.          </tbody>
  11.       </table>
  12.     </div>
  13. </div>
  14. </div>
复制代码



现在希望通过描述性编程获取其中的webtable对象

  1. Set oTestDesc = Description.Create()
  2. oTestDesc("html tag") = "table"
  3. Set oTestTable = Browser(":=").Page(":=").WebElement("html tag:= DIV","class:=c2").ChildObjects(oTestDesc)
复制代码


现在的问题是,这个webTable是2*2的
但是oTestTable(0)并没有取出预期的内容,并且oTestTable.Count = 9,使用oTestDesc("micclass")="WebTable"也得到同样的结果
我应该怎么写才能获取其中的WebTable对象??这个table没有name或者id之类的标识性属性。
求高手相助
作者: sunnyswu    时间: 2011-4-14 22:39
教你 个办法,
实在 获取不到对象, 那么总可以获得xml 解析xml吧
作者: shingo0109    时间: 2011-4-15 11:02
本帖最后由 shingo0109 于 2011-4-15 11:04 编辑

LZ先用spy看下webtable的属性是啥。。
如果要用childobjects,我觉得不应该写在WebElement后面吧, 一般WebTable应该位于Page或frame下的吧, LZ参考下以下代码看看:
Set oTestDesc = Description.Create()
oTestDesc("micclass").Value = "WebTable"
oTestDesc("html tag").Value = "table"    '根据实际属性修改
oTestDesc("class").Value = "c2"             '根据实际属性修改

Set oTestTable = Browser(":=").Page(":=").ChildObjects(oTestDesc)
For i=0 to oTestTable.Count-1
  msgbox oTestTable(i).GetCellData(1,1)    '输出1行1列的数据
Next




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