51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 3324|回复: 1
打印 上一主题 下一主题

[求助] 跪求~~~无法获取顶层弹出窗口的对象

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-6-24 00:07:43 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5测试积点
各位大虾,我在录制时遇到这样一个问题:
最顶层的弹出窗口无法添加到对象库中。
架构是这样的:最底一层是页面,然后中间层有个弹出窗口,最顶层还是个弹出窗口,最顶层的弹出窗口是中间层的从属窗口。中间层的弹出窗口在最顶层窗口弹出后置灰。用SPY识别可以最顶层窗口,但是无论是手工添加还是自动添加都无法成功添加到对象库中。
有哪位大虾可以帮忙~跪求

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

使用道具 举报

该用户从未签到

2#
发表于 2011-6-24 08:35:22 | 只看该作者
你所说的两层弹出框,一层是模态窗口(Window对象),一层是Dialog对话框吧?
如果是的话,你先试试如下步骤:
1、关闭浏览器和QTP,并且清理掉所有无关的浏览器窗口;
2、打开QTP的remote agent(开始-所有程序-QuickTest Professional-tools-Remote Agent);
3、打开QTP;
4、打开被测应用
这样重新添加一般都可以添加进去,如果还不行建议使用描述性语言去匹配(直接在QTP中执行ClickDialogWithoutJudge):

  1. Public Function ClickDialogWithoutJudge
  2.            Dim inx:inx = 0
  3.         
  4.            Set DialogObject = Description.Create()
  5.            DialogObject("micclass").Value = "Dialog"
  6.            Set WindowsDialog = Desktop.ChildObjects(DialogObject)
  7.         
  8.            For inx = 0 to WindowsDialog.Count - 1
  9.                       Set WinButtonObject = Description.Create()
  10.                       WinButtonObject("micclass").Value = "WinButton"
  11.                       Set WindowsButton = WindowsDialog(inx).ChildObjects(WinButtonObject)               
  12.                       WindowsButton(0).Click
  13.                       Set WindowsButton = Nothing
  14.                       Set WinButtonObject = Nothing
  15.            Next
  16.         
  17.            Set WindowsDialog = Nothing
  18.            Set DialogObject = Nothing
  19. End Function
复制代码
回复

使用道具 举报

本版积分规则

关闭

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

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

GMT+8, 2024-11-25 17:29 , Processed in 0.068997 second(s), 25 queries .

Powered by Discuz! X3.2

© 2001-2024 Comsenz Inc.

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