51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2563|回复: 9
打印 上一主题 下一主题

[原创] 【已解决】qtp webtable.childitem 建立虚拟子对象后提示对象不存在

[复制链接]
  • TA的每日心情
    慵懒
    2016-4-26 12:45
  • 签到天数: 3 天

    连续签到: 2 天

    [LV.2]测试排长

    跳转到指定楼层
    1#
    发表于 2012-12-10 17:17:21 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    本帖最后由 黑羽祭 于 2012-12-12 11:25 编辑

    目的,进入51个人空间管理中,搜索内容,如果有搜索到对应的内容,则在选挚的勾选框
    代码如下:
    with Browser("个人空间管理").Page("个人空间管理")
    rowcount=.WebTable("标题").RowCount
    msgbox rowcount
    columncout=.WebTable("标题").ColumnCount(1)
    msgbox columncout
    end with
    For row=0 to rowcount-1
    celldata=Browser("个人空间管理").Page("个人空间管理").WebTable("标题").GetCellData(row+1,2)

    For i=1 to 2
       Select Case i
       Case 1
             searchchar1="excel导入错误"
             return=instr(1,celldata,searchar1)
       If return<>0 Then
             set oWebCheckBox =Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1, 1, "WebCheckBox", 0)
               oWebCheckBox.set  "on"         
      Set oWebCheckBox=nothing
               Exit for
       End If

       Case 2
               searchchar2="qtp参数化报错"
                return=instr(1,celldata,searchar2)
                     If return<>0 Then
              set oWebCheckBox= Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1,1,"WebCheckBox",0)
               oWebCheckBox.set  "on"
               Set oWebCheckBox=nothing
               Exit for
               end if
       End Select
    next
    Next

    但是oWebCheckBox.set  "on"
    一直提示无该对象?这个是什么原因呢?
    分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
    收藏收藏
    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    2#
    发表于 2012-12-11 09:34:11 | 只看该作者
    回复 1# 小丫头amy


        大概看上去
    set oWebCheckBox =Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1, 1, "WebCheckBox", 0)
    oWebCheckBox.set "on"         
    Set oWebCheckBox=nothing
    这部分没什么问题啊。
    检查下符号(不要用中文符号)啊,空格啊什么的看看
    实在不行脚本发我邮箱,我帮你再看看
    cydblack@163.com
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    3#
    发表于 2012-12-11 10:57:20 | 只看该作者
    set oWebCheckBox =Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1, 1, "WebCheckBox", 0)
               oWebCheckBox.set  "on"

    貌似oWebCheckBox 返回的应该是个集合吧。。。。你把集合set on 不靠谱吧。。。。。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2012-12-11 11:52:09 | 只看该作者
    楼上正确。

    看帮助,ChildItem Returns the collection of child objects contained within the object.

    ChildItem这个方法返回一个子对象集。哪怕这个子对象集中只有1个对象,你也要用.item(0)来表示子对象集中的第一个对象。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-4-26 12:45
  • 签到天数: 3 天

    连续签到: 2 天

    [LV.2]测试排长

    5#
     楼主| 发表于 2012-12-11 14:26:28 | 只看该作者
    回复 4# 泰然


        采用这种objecet.item(i) 还是会报缺少对象的错误
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    6#
    发表于 2012-12-11 14:54:15 | 只看该作者
    回复 1# 小丫头amy


        已解决,上代码:
    1. '''获取行和列
    2. With Browser("个人空间管理").Page("个人空间管理")
    3.         rowcount=.WebTable("标题").RowCount
    4.         msgbox "行数 = " & rowcount
    5.         columncout=.WebTable("标题").ColumnCount(1)
    6.         msgbox "列数 = " & columncout
    7. End With


    8. For row=0 to rowcount-1
    9.         celldata=Browser("个人空间管理").Page("个人空间管理").WebTable("标题").GetCellData(row+1,2)
    10.         
    11.         For i=1 to 2
    12.                 Select Case i
    13.                         Case 1
    14.                                 searchar1="excel导入错误"
    15.                                 return=instr(1,celldata,searchar1)
    16.                                 If return<>0 Then
    17.                                         set oWebCheckBox =Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1, 1, "WebCheckBox", 0)
    18.                                         oWebCheckBox.set  "on"
    19.                                         Set oWebCheckBox=nothing
    20.                                         Exit for
    21.                                 End If
    22.                
    23.                         Case 2
    24.                                 searchar2="qtp参数化报错"
    25.                                 return=instr(1,celldata,searchar2)
    26.                                 If return<>0 Then
    27.                                         set oWebCheckBox= Browser("个人空间管理").Page("个人空间管理").WebTable("标题").ChildItem(row+1,1,"WebCheckBox",0)
    28.                                         oWebCheckBox.set  "on"
    29.                                         Set oWebCheckBox=nothing
    30.                                         Exit for
    31.                                 End if
    32.                 End Select
    33.         Next
    34. Next
    复制代码


    你的问题在
    searchchar1="excel导入错误"
    return=instr(1,celldata,searchar1)

    这句子,上面的变量searchchar1(注意有两个ch),到了下面searchar1(只有一组ch)了。
    要不是我一行一行调下来,真是不容易发现。
    粗心啊~
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    7#
    发表于 2012-12-11 14:58:11 | 只看该作者
    回复 3# joykao


        ChildItem(row+1, 1, "WebCheckBox", 0)
    得到的是子集,但是,这句的最后一个参数0,等同于index:=0,所以就能确定下是哪一个了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    8#
    发表于 2012-12-11 14:58:41 | 只看该作者
    回复 4# 泰然


            ChildItem(row+1, 1, "WebCheckBox", 0)
    得到的是子集,但是,这句的最后一个参数0,等同于index:=0,所以就能确定下是哪一个了
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    无聊
    2020-12-8 11:20
  • 签到天数: 605 天

    连续签到: 1 天

    [LV.9]测试副司令

    9#
    发表于 2012-12-11 15:39:52 | 只看该作者
    回复 7# 黑羽祭

    开始么有看清楚,判断比较下来是单个的元素,语法么有错误,楼主把我给玩了哇,,变量名字前后不一致。。。。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    慵懒
    2016-4-26 12:45
  • 签到天数: 3 天

    连续签到: 2 天

    [LV.2]测试排长

    10#
     楼主| 发表于 2012-12-11 17:10:08 | 只看该作者
    回复 9# joykao


        粗心了,谢谢!!
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-26 22:04 , Processed in 0.084599 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表