51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2240|回复: 7
打印 上一主题 下一主题

[原创] 已解决【使用Description.Create()遍历定为到对象后使用】测试时产生的问题

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-6-8 20:31:29 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 u03024218 于 2011-6-9 09:50 编辑
  1. systemutil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","www.baidu.com"

  2.    Set oWebEdit =description.Create()
  3.    oWebEdit("micclass").Value="webedit"
  4.    Set EditObject=Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").ChildObjects(oWebEdit)
  5.    ObjectCount=Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").ChildObjects(oWebEdit).count
  6.    For i=0 to ObjcetCount-1
  7.            If Editobject(i).GetRoProperty("name")="wd" Then
  8.                    Editobject(i).set="jcygscz"
  9.            End If
  10.    Next
复制代码


以上是代码。




ObjectCount在刚走到oWebEdit("micclass").Value="webedit" 时 还能有值,显示为29,但是单步执行1步后,值就清空了。导致根本不会进入循环,见附件






请教一下 这是怎么回事啊?

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
 楼主| 发表于 2011-6-8 23:05:27 | 只看该作者
用的是百度的首页,直接copy过去就能看~~有没有高手呀,折磨好久了
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2011-6-8 23:12:33 | 只看该作者
怎么会有29个呢,百度首页不是只有一个webedit吗,还有你第9行是没有=号的。
帮你改了下,你试试:


systemutil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","www.baidu.com"

   Set oWebEdit =description.Create()
   oWebEdit("micclass").Value="WebEdit"
   Set EditObject=Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").ChildObjects(oWebEdit)
   
   For i=0 to EditObject.count - 1
           If Editobject(i).GetRoProperty("name")="wd" Then
                   Editobject(i).set "jcygscz"
           End If
   Next
回复 支持 反对

使用道具 举报

该用户从未签到

4#
 楼主| 发表于 2011-6-9 09:36:48 | 只看该作者
Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").ChildObjects(oWebEdit).count   还是等于29

而且执行到下一步的时候 便会被清零  根本不会进循环~~~

谢谢斑竹 我在看看研究下
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2018-7-13 14:04
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    5#
    发表于 2011-6-9 09:40:31 | 只看该作者
    我帮你重新改了一下.经测试可行____________

    1.    systemutil.Run "C:\Program Files\Internet Explorer\IEXPLORE.EXE","www.baidu.com"
    2.    Browser("name:=百度一下,你就知道").Sync
    3.    Set oWebEdit =description.Create()
    4.    oWebEdit("micclass").Value="WebEdit"
    5.    Set EditObject=Browser("name:=百度一下,你就知道").Page("title:=百度一下,你就知道").ChildObjects(oWebEdit)
    6.    ObjectCount=EditObject.count
    7.    For i=0 to ObjcetCount
    8.            If Editobject(i).GetRoProperty("name")="wd" Then
    9.                    Editobject(i).set "jcygscz"
    10.            End If
    11.    Next
    复制代码
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
     楼主| 发表于 2011-6-9 09:49:35 | 只看该作者
    找到问题了 还是看了斑竹的blog。主要是对象的属性写错了

    oWebEdit("micclass").Value="webedit"

    这句中的webedit 应该写成WebEdit 没有忽略大小写。。

    谢谢斑竹
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-13 14:04
  • 签到天数: 6 天

    连续签到: 1 天

    [LV.2]测试排长

    7#
    发表于 2011-6-9 11:17:47 | 只看该作者
    oWebEdit("micclass").Value="webedit"
      对WebEdit 确实是区分大小写的.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
     楼主| 发表于 2011-6-9 14:04:57 | 只看该作者
    谢谢17800455和斑竹了~~~

    那最后有个问题,这个29是哪里来的? 随机值吗?
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-20 01:30 , Processed in 0.088631 second(s), 29 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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