51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

查看: 50125|回复: 124
打印 上一主题 下一主题

QTP无法录制某些控件的操作的解决方法

[复制链接]
  • TA的每日心情
    开心
    2016-2-27 08:48
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    跳转到指定楼层
    1#
    发表于 2006-8-31 10:32:39 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
    经常有朋友问:QTP无法识别某些自制 的控件或无法录制某些控件的操作,我怎么解决这个问题? 我想解决方法有下面几个:

    1, 添加相应的Add-in是解决此类问题的第一选择,如果有相应的Add-in的话。例如如果是测试 Java 类的程序,就要加载 Java Add-in。
        你安装好 QTP后,有三个Add-in ( ActiveX、Visual Basic和 Web)就被装载了。除此以为,QTP 8.2 版本还可以装载的 Add-in 有  QuickTest Professional  Java 6.5 Add-in 、QuickTest Professional Oracle 6.5 Add-in 、QuickTest Professiona Siebel 8.0  Add-in 和 QuickTest Professional Terminal Emulator 8.0 Add-in。 (每个版面的QTP可以加载的 Add-in 可以在相应的QTP_Install_Guide.pdf 和 Main_Users_Guide.pdf 中找到。)

    2,把不能识别的对象设置为虚拟对象(Virtual Object)
         依次点击 QTP 的 “Tools” ---> "Virtual Objects"--->"New Virtual Object...", 就会出现 Virtual Object Wizard 对话框,你根据Wizard  的指引,就可以把添加一些支持的不好的控件设置成虚拟控件,也就添加到对象库了。
       
    1.    在QTP 8.2 添加虚拟对象的具体操作步骤是:
    2.        1,  依次点击 Tools ---> Virtual Objects ---> New Virtual Object…,打开虚拟对象向导,点击Next;
    3.        2,  选择Class为button,点击Next;
    4.        3,  点击标记对象按钮;
    5.        4,   选择要操作的对象区域,点击Next (对象区域就是你要操作的那个对象);
    6.        5,    默认,点击Next;
    7.        6,   完成。
    复制代码

       
        添加虚拟对象后可以解决问题实例有:
       http://www.17testing.com/bbs/viewthread.php?tid=976&extra=page%3D1&page=1
       http://bbs.51testing.com/thread-60897-1-6.html

    3,把QTP不能录制的对象手工添加到object repository, 然后写代码实现 需要的操作。详细信息请参考:
        http://bbs.51testing.com/thread-45142-1-6.html  中的#7   

    4,针对特殊问题有特殊的解决方法。如果不能识别的控件是用VC做的,那么你可以自己写一个动态链接库,然后让QTP去调用它。至于QTP 如何调用动态链接库,请看附件。

      如果谁还有好方法,请也说出来。大家一起讨论一下。我坚信这里问题一定能得到解决!胜利一定是属于我们的!sdlkfj3 sdlkfj3 sdlkfj3

    [ 本帖最后由 walker1020 于 2007-2-1 23:39 编辑 ]

    本帖子中包含更多资源

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

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

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    2#
     楼主| 发表于 2006-8-31 10:38:40 | 只看该作者

    补充一点

    Object Spy 是 QTP 用來查看、监视 GUI object 属性的工具。通过Object Spy 你是无法把对象添加到 对象库的。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
    发表于 2006-8-31 10:39:18 | 只看该作者
    强烈支持斑竹!!!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2006-8-31 10:50:29 | 只看该作者
    不错,支持中........
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    5#
     楼主| 发表于 2006-8-31 11:31:40 | 只看该作者

    另外一种解决方法

    曾经有朋友问:“用Object Spy时识别到是ActiveX 对象,在Add Object时也能识别是ActiveX对象,并且识别出来是windows media player控件,但就是不能加到对象库。”

    针对此问题,如果需要把对象添加到对象库里面去,我提供另外一种解决方法:
    依次点击 “Tools" ---> "Object Repostory...", 在出现的Object Repository 对话框中,按下 Add Objects 按钮,将应用软件的 GUI Object 加入到 Object Repository中 就可以了。具体操作请看附件的《什么是 Keyword-Driven Testing 》。 在此向 oldsidney 表示感谢,因为是他的文章启发了我,让我想到了这个方法。 大师就是大师呀,不服不行呀。呵呵!sdlkfj3

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    6#
    发表于 2006-8-31 16:36:16 | 只看该作者

    walker1020

    如果用这种方法去识别的话只能在当前脚本有效,如果打开一个新的,就没有了,还必须实际识别一下
    所以还是应该通过这种方式来识别的Tools ---> Virtual Objects ---> New Virtual Object
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    7#
     楼主| 发表于 2006-8-31 19:38:07 | 只看该作者
    原帖由 qd_pudding 于 2006-8-31 16:36 发表
    如果用这种方法去识别的话只能在当前脚本有效,如果打开一个新的,就没有了,还必须实际识别一下
    所以还是应该通过这种方式来识别的Tools ---> Virtual Objects ---> New Virtual Object


    谢谢qd_pudding的提醒和补充! 虚心向你学习!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2018-7-16 14:25
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    8#
    发表于 2006-9-1 14:12:12 | 只看该作者
    我现在也被这问题困扰,谢谢,我按以上所说的方法尝试一下。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-12-26 13:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    9#
    发表于 2006-9-1 22:24:01 | 只看该作者

    我也发过一些类似的贴子。
    都是关于QTP无法识别的问题。
    今天没在公司,看到你的贴子,很有想法。
    只可惜不能实践,等到周一我一定试试。。
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-12-26 13:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    10#
    发表于 2006-9-5 14:18:53 | 只看该作者

    出错了

    我用New Virtual Object...新建一个表格,36行9列。选中区域后点下一步,最后完成出现一个提示:

    This operation cannot be performed.For further help please contact support.

    点确定后,再点到QTP就没有反应了。
    用Alt+Tab时,QTP也没有在列表中。

      请问可能原因是什么啊?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2006-9-8 17:39:14 | 只看该作者

    谢谢版主!

    按照版主所讲的,的确是有效!
    我是测试java应用程序的时候遇到了一些这样的问题!一般情况下:JtextFiled,JTree这样的控件不能识别!一直提示:“对象属性不能匹配”,设置成虚拟对象以后的确可以!但是还是无法添加到对象库中,“qd_pudding”说的对!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2006-9-12 10:47:49 | 只看该作者

    按照Tutorial_oldsidney_cn.pdf 练习 QTP时,遇到问题!

    上网助手等插件都卸载掉了,在TOOLs> Option > WEB>Page/Fram Options.., 选择 Different object descriptions,又试过一次还是录制不了文本框、按钮。我也试过用object SPY和Virtua objectl了,可是还是不行呀!
    各位高手,请指点。不知道是不是还有什么会影响其录制呢?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-12-26 13:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    13#
    发表于 2006-9-12 20:25:02 | 只看该作者

    值得学习

    好文章,值得推荐和学习!

    这些方法和可能是初学者,逐步深入时可能会遇到的问题。

    在这里可以找到解决方法,顶一顶,看了不顶就吃亏了。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    14#
    发表于 2006-9-26 17:07:45 | 只看该作者

    我还是录制不了控件

    我按班主的方法,装了 QuickTest Professional  Java 6.5 Add-in 、QuickTest Professional Oracle 6.5 Add-in ,但是,录制脚本后再运行,还是会出现无法识别控制的提示,麻烦给于指导,十分感谢,。

    [ 本帖最后由 denty 于 2006-9-26 18:01 编辑 ]

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
    发表于 2006-9-26 22:53:28 | 只看该作者
    好贴,支持ing
    回复 支持 反对

    使用道具 举报

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

    连续签到: 1 天

    [LV.1]测试小兵

    16#
     楼主| 发表于 2006-9-27 15:12:54 | 只看该作者
    原帖由 denty 于 2006-9-26 17:07 发表
    我按班主的方法,装了 QuickTest Professional  Java 6.5 Add-in 、QuickTest Professional Oracle 6.5 Add-in ,但是,录制脚本后再运行,还是会出现无法识别控制的提示,麻烦给于指导,十分感谢,。


    根据错误提示,这应该是脚本的某行语句有问题。 QTP运行到脚本的哪一行时出现这个Run  Error 的错误信息?最好把你的脚本发送上来,这样我们好帮助你解决问题。

    提示:我怀疑出错的这行代码是你自己写的吧。如果你用到了某个函数,你是不是函数的参数没有写对? 还是漏写了括号?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2006-9-29 15:43:28 | 只看该作者
    我的脚本如下:

    本帖子中包含更多资源

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

    x
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2006-9-29 15:45:08 | 只看该作者
    麻烦大家帮我看一下,真的很感谢/我看是日期的选择框有问题,不知道为什么不能运行通过。
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2006-9-29 15:51:58 | 只看该作者
    上面可能看不清楚,这个才清楚:
    Browser("用户登录").Page("用户登录").WebEdit("loginName").Set "test"
    Browser("用户登录").Page("用户登录").WebEdit("loginPassword").SetSecure "451cc72e23ede933bdb9747662e5"
    Browser("用户登录").Page("用户登录").Image("login").Click 20,24
    Browser("用户登录").Page("管理平台框架123121.0").Frame("left").WebElement("定购关系 查询").Click
    Browser("用户登录").Page("管理平台框架123121.0").Frame("left").Link("包月业务定购关系查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main").WebEdit("phoneNum").Set "13929550934"
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main").WebButton("查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("top").Link("使用记录查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("left").WebElement("使用记录 查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("left").Link("使用业务记录查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main_2").Image("显示日历").Click
    Browser("管理平台框架123121.0").Window("日期选择 -- 网页对话框").Page("日期选择").WebElement("1").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main_2").WebEdit("phoneNum").Set "13929550934"
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main_2").WebButton("查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("main_2").WebButton("查询").Click
    Browser("管理平台框架123121.0").Page("管理平台框架123121.0").Frame("left").Link("退出系统").Click
    Browser("用户登录").Page("用户登录_2").Sync
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2006-9-29 16:00:40 | 只看该作者
    若,我在日期控制的不选择,直接默认,那,再次运行上面的脚步本时就没有问题。不知道是何解。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-5-3 17:17 , Processed in 0.110142 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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