[发明专利]一种获取控件的方法及装置有效
申请号: | 201110322653.8 | 申请日: | 2011-10-21 |
公开(公告)号: | CN103064782B | 公开(公告)日: | 2017-03-15 |
发明(设计)人: | 丁如敏 | 申请(专利权)人: | 腾讯科技(深圳)有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京康信知识产权代理有限责任公司11240 | 代理人: | 吴贵明,张永明 |
地址: | 518000 广东省深*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 获取 控件 方法 装置 | ||
技术领域
本发明涉及计算机技术领域,特别涉及一种Android自动化测试中获取控件的方法及装置。
背景技术
随着Android系统在手机领域的广泛使用,针对手机的Android自动化测试也变得越来越重要。目前在Android自动化测试中,大多数是基于控件的自动化测试,通过获取当前界面的特定控件,然后对控件触发相关操作来模拟人的操作,达到自动化效果。
Android系统中的控件都是继承于基类View,所述控件包括基本控件和封装控件;封装控件包括多个子控件,且封装控件是将多个子控件封装在一起的控件,如图1所示,其中每个所述子控件可以为封装控件,也可以为基本控件,但是封装控件的最底层的子控件为基本控件。现有Android自动化测试中,Android系统一般是通过调用FindViewById()函数来获取当前界面的特定控件,但是FindViewById()函数仅仅针对Android系统的非封装控件(即基本控件);对于封装控件而言,调用FindViewById()函数无法获取到当前界面的封装控件中的子控件,于是就不能对子控件触发相关操作来实现自动化测试,只能终止Android自动化测试。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:现有Android自动化测试中,Android系统调用的FindViewById()函数只能获取当前界面的非封装控件(即基本控件),无法获取当前界面的封装控件中的子控件,使得Android自动化测试中的某些功能或场景无法自动化,自动化覆盖率减低。
发明内容
为了提高Android自动化测试中的自动化覆盖率,本发明实施例提供了一种获取控件的方法及装置。所述技术方案如下:
一种获取控件的方法,包括:
根据Java反射机制,动态获取当前界面的第一基本控件和第一封装控件;
递归遍历出所述第一封装控件中的第二基本控件,将所述第一基本控件和所述第二基本控件作为第三基本控件;
根据所述第三基本控件获取当前界面的可见控件;
在所述当前界面的可见控件中查找并获取符合预定属性信息的基本控件。
一种获取控件的装置,包括:
动态获取模块,用于根据Java反射机制,动态获取当前界面的第一基本控件和第一封装控件;
第三基本控件获取模块,用于递归遍历出所述第一封装控件中的第二基本控件,将所述第一基本控件和所述第二基本控件作为第三基本控件;
可见控件获取模块,用于根据所述第三基本控件获取当前界面的可见控件;
获取模块:用于在所述当前界面的可见控件中查找并获取符合预定属性信息的基本控件。
本发明实施例提供的技术方案带来的有益效果是:本实施例在Android自动化测试中,通过递归遍历出封第一装控件中的第二基本控件来获取当前界面的所有基本控件;然后对所述所有基本控件执行相关处理后,根据预定属性信息获取到符合预定属性信息的基本控件,相比较现有技术而言,可以完整实现Android自动化测试,使得自动化覆盖率提高。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是现有技术提供的封装控件的结构示意图;
图2是本发明实施例1提供的一种获取控件的方法实施例的流程图;
图3是本发明实施例2提供的一种获取控件的方法实施例的流程图;
图4是本发明实施例2提供的Activity组件上控件结构示意图;
图5是本发明实施例3提供的一种获取控件的装置实施例的结构示意图;
图6是本发明实施例4提供的一种获取控件的装置实施例的结构示意图。
具体实施方式
本发明实施例提供一种获取控件的方法及装置。
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
实施例1
参考图2,图2是本发明实施例1提供的一种获取控件的方法实施例的流程图;本实施例应用于Android自动化测试中,所述获取控件的方法包括:
S101:根据Java反射机制,动态获取当前界面的第一基本控件和第一封装控件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于腾讯科技(深圳)有限公司,未经腾讯科技(深圳)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110322653.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种消息处理的方法及移动设备
- 下一篇:一种匹多莫德的新晶型及其制备方法