51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 7622|回复: 18
打印 上一主题 下一主题

[原创] 急求Object not visible错误的解决方法

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2007-1-25 10:46:38 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我用QTP加.Net Add In测试某个C/S系统,其中遇到一个怪问题,脚本如下:

SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Set "OFF"
SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Set "ON"

回放时,第一句执行结果正确,第二句就会出错,错误信息就是Object not visible。
但是其实这两句是对同一个check box选中和不选中的操作,不选中就能成功,选中会出错。
我加了wait语句也还是会出错。希望有更好的解决办法,谢谢谢谢谢谢谢谢各位大侠了。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2007-1-25 12:18:35 | 只看该作者
SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Set "ON" 这句话是你录制产生的还是自己拷贝修改?
看一下,单独的set OFF和 set on是否可以跑过?
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2007-1-25 13:01:26 | 只看该作者
我是录制的,就录制选中和不选中两个动作,回放的时候第二句就会出错了。
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    4#
    发表于 2007-1-25 13:13:28 | 只看该作者
    你到 Test Report 里面看看 具体的原因,看看到底是SwfCheckBox("Include Free Variable").对象的哪个属性发生了变化。这样才好有针对性地去修改
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
    发表于 2007-1-25 13:30:46 | 只看该作者
    应该是SwfCheckBox的属性发生了变化
    不然不可能找不到这个对象的....
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2007-9-18 16:21:38 | 只看该作者
    有没有实际的解决方法啊?
    ...........我现在也遇到这个问题了!!!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    7#
    发表于 2007-9-18 22:13:56 | 只看该作者
    你看一下运行时的 Application, 对象SwfCheckBox 是否是灰色的(不可用),所以不让你选择呀。如果是这样,QTP自然是会报告Object not visible了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    8#
    发表于 2007-11-23 16:40:07 | 只看该作者
    我遇到了同样的问题:
    Dialog("iP-FunTV Player").Click 287,254   
    运行到这里时有时会报错,有时又会运行!本来以为是测试窗口被移动了位置的原因,但把它映射成button后还是一样.
    我观察了下,好象是测试窗口被QTP遮盖了,但是我不明白为什么窗口会被遮盖?!
    也急!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    9#
    发表于 2007-11-30 12:27:21 | 只看该作者
    有人知道解决办法么
    我也遇到了,页面比较长,进入页面时,我要操作的对象需要下拉页面才看得到
    这时操作对象,就报not visible,但若将对象拉出来屏幕可见,则不会出错
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    10#
    发表于 2007-11-30 15:32:06 | 只看该作者
    o,我的问题通过type micend就可以了,但是不知道啥原因,是页面的问题么?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2007-11-30 16:17:05 | 只看该作者
    Print SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Exists(0)
    Print SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Object.IsVisible
    看看这个组件是不是存在或者是可见的
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2007-11-30 16:19:09 | 只看该作者

    回复 8# 的帖子

    To junlingliu:
    建议你在每次运行 Dialog("iP-FunTV Player").Click 287,254    语句前, 运行一下 Dialog("iP-FunTV Player").Activate 这样可以确保你需要的这个窗口在前端。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2007-12-6 10:04:38 | 只看该作者
    谢谢美美,我知道了
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2008-4-17 16:04:45 | 只看该作者
    怎么解决这个问题,各位?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2009-8-28 21:46:00 | 只看该作者
    SwfEditor, SwfComboBox, SwfSpin都会出现“object not visible”的问题,我现在是用数据驱动时第一个数据一般能通过,第二个数据开始就会出问题了。我试了wait,也试了Activate,还是一样有问题。有时出问题时点击一下那个程序,再点retry就可以了,哪位高手帮看一下要怎么解决啊?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2009-8-29 10:18:22 | 只看该作者
    SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").object.setAttribute(“属性名”,“OFF”)
    SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").object.setAttribute(“属性名”,“ON”)
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2010-10-28 22:12:06 | 只看该作者
    本帖最后由 lyscser 于 2010-10-28 22:13 编辑

    嘿嘿,试试本座的方法吧,只要RP好,一般都可以对付,不过也有失败的几率哦……

    Set Wshshell = CreateObject("Wscript.shell")
    SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Set "OFF"
    isact = False
    Do While isact = False
       If Wshshell.AppActive("IT-FastClose") = True Then  'AppActive("IT-FastClose")------这里括号里面要是windows显示出来的窗口标题,可以用Spy获取
          SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Set "ON"
          isact = True
       Else
          SwfWindow("IT-FastClose").SwfWindow("Set-up").SwfCheckBox("Include Free Variable").Click
       End If
    Loop
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2010-10-29 13:25:37 | 只看该作者
    在下次引用這個對象之前 refresh一下, object.RefreshObject
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2011-3-2 18:17:48 | 只看该作者
    将此对象进行重新激活,进行ACTIVE. 看一下是否可行
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-20 18:44 , Processed in 0.075632 second(s), 24 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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