51Testing软件测试论坛

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

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 5741|回复: 9
打印 上一主题 下一主题

求助,如果用RFT抓到无法识别的对象,想用find方法不知道属性

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2011-8-30 16:51:59 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我们公司开发的一个产品里面使用的是自己编写的一个控件类,这个控件类与dbgrid相似,但是在RFT自动化测试中,这个grid无法获得,只能抓到他的上层。
然后我想使用find方法去获得这个grid,可是因为抓不到任何属性,不知道怎么使用动态的方法去获得这个对象。向大家求助,如何才能获得这种对象。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏
回复

使用道具 举报

该用户从未签到

2#
发表于 2011-9-1 16:20:47 | 只看该作者
可以使用RFT的录制功能去录制一下那个控件的任意操作,然后去脚本资源管理视图中,就可以看到这个对象的一些基本属性了,这样,你就可以调用find方法了。
一般的,任何一个对象都会被映射为RFT的一个对象,即使不能被对象检查器识别的对象也一样
回复 支持 反对

使用道具 举报

该用户从未签到

3#
 楼主| 发表于 2011-9-6 11:26:47 | 只看该作者
回复 2# dreamever

我试了用录制的方式,可是代码里面只有用上级对象点击一个相对坐标的代码,在Test Objects里面也只有splitPanUser()这一个对象啊
splitPaneUser().doubleClick(atPoint(110,31));
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2011-9-7 15:53:19 | 只看该作者
那就是真的不支持。。。
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2011-9-16 13:40:17 | 只看该作者
如果是用.net开发的,那就安装一下.net framework,然后用录制的方式应该能获取到那个对象的属性.
,脚本无法获取到对象属性的原因,主要是机器上没有相应的GUI库(暂且这么叫)
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2011-10-15 00:09:17 | 只看该作者
自定义的控件,这种事情常有发生。
1、开后门,开发的时候就考虑的可测试性。
2、相对坐标
3.。。。期待大侠补充
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-2-9 22:20:28 | 只看该作者
最近我公司也遇到这个问题,抓取不到对象,例如某个text文本框,抓的都是坐标,真正的属性没有,期待解惑
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2012-11-14 17:05:27 | 只看该作者
找到grid父节点,然后遍历所有子节点及其属性
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2013-4-16 16:01:16 | 只看该作者
最近我公司也遇到这个问题,抓取不到对象,例如某个text文本框,抓的都是坐标,真正的属性没有,期待解惑
apollohappy 发表于 2012-2-9 22:20



抓父节点试一下。
如果依然抓不到,看一下界面的源文件.
回复 支持 反对

使用道具 举报

  • TA的每日心情
    开心
    2015-12-15 23:23
  • 签到天数: 2 天

    连续签到: 1 天

    [LV.1]测试小兵

    10#
    发表于 2013-5-14 14:48:48 | 只看该作者
    可以尝试一下:对于定制的控件,先把整体控件抓取,再使用getMethods() 获取控件的所有方法及其签名,分析下使用哪些方法可以获取grid控件,然后用invoke方法调用。
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

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

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

    GMT+8, 2024-11-23 17:43 , Processed in 0.087938 second(s), 25 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

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