51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 2609|回复: 6
打印 上一主题 下一主题

[求助] 很有难度的对象识别问题[完美解决]

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2009-5-20 15:50:52 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
今天我使用工具发现一个对象的单击事件回放通过,却没有单击事件的效果.

下面我放出页面的源代码,和QTP识别出的对象内容

实际上这个object标签里面是一个flash.单击后出来一个选择文件的对话框..
经过一段时间的思考,虽然还是没有真正识别,不过总结出一个函数,也能比较完美解决,所以就没必要要求QTP真正识别了.
解决方法如下:
'*******************************************************************
'函数说明:针对WEB类的页面对于特别的无法完全识别,但是能识别部分属性的做单击操作
'参数1:NotKnow_Object:不能完全识别的对象
'返回值:无
'*******************************************************************

Function Click_NotKnow(NotKnow_Object)
Do
  If NotKnow_Object.exist Then
   NotKnow_Object.FireEvent "onfocus"
   wait 1
   NotKnow_Object_x=NotKnow_Object.GetROProperty("x")
   NotKnow_Object_y=NotKnow_Object.GetROProperty("y")
   Window("regexpwndtitle:=Microsoft Internet Explorer").WinObject("regexpwndclass:=Internet Explorer_Server").Click NotKnow_Object_x,NotKnow_Object_y
   wait 1
   Exit Function
  End If
Loop
End Function

[ 本帖最后由 onlonely 于 2009-6-6 08:25 编辑 ]

本帖子中包含更多资源

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

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

使用道具 举报

该用户从未签到

7#
发表于 2009-5-21 10:15:14 | 只看该作者
学习了
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2017-7-4 15:34
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    6#
    发表于 2009-5-21 10:09:54 | 只看该作者
    使用全屏,然后用虚拟对象录制。这种问题我碰到过。回放时,也必须保证全屏。同时脚本执行时使用的分辨率必须与录制时一样
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    5#
     楼主| 发表于 2009-5-21 09:39:52 | 只看该作者

    回复 3# 的帖子

    目前,只有使用鼠标模拟方式录制能正确回放,但是这样很容易在页面发生变化的情况下回放失败,必须还有其他解决方式
    我试过使用其他方式,
    比如模拟键盘输入,
    低级录制
    虚拟对象
    都不能正确回放,
    关键原因是<QTP识别那个地方是一个"OBJECT"标签>实际上这个标签内部是一个flash.
    只要是对这个标签做任何操作都是无效的,只有对里面的flash操作才能有效
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    4#
    发表于 2009-5-20 17:11:22 | 只看该作者
    click方法应该是触发网页上对象的onlcick事件,和直接手工点击是有区别的,调用Win32 API点击试试应该可以
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    3#
     楼主| 发表于 2009-5-20 16:57:10 | 只看该作者

    回复 1# 的帖子

    不是flash的问题,我单独在一个页面中打开这个flash就能录制并回放 ,单击这个flash的事件
    可是使用我上面附件里面的代码就不行了.
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    2#
    发表于 2009-5-20 16:07:36 | 只看该作者
    QTP好象只扶持 flex编译出来的flash文件, 而且还要专门加载库文件
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-11 12:50 , Processed in 0.070448 second(s), 31 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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