电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

Android_自动化测试

Android_自动化测试_第1页
1/43
Android_自动化测试_第2页
2/43
Android_自动化测试_第3页
3/43
Android 自动化测试初探-1:捕获Activity 上的Element第一部分:前言Android 系统下应用程序的测试现在应该还算是个新的领域,网上关于这方面的资料很多都是基于白盒测试的,一般都是基于JUnit 框架和Android SDK 中android.test 等命名空间下的内容进行,但是有一个前提,那就是必须要有应用程序的源代码以提供测试接入点,但是这在很多软件公司中是不现实的。很多测试工程师做的工作是完全黑盒,基本接触不到源代码,白盒测试大部分也是由开发自己完成。回顾一下Windows 下的黑盒测试自动化,先前使用的是微软提供的基于.netframework 的UI Automation 自动化测试框架(要求版本在.net framework 3.0 以上,即 VS.NET2008 开发环境),对与擅长 C#语言的人来说,使用起来确认比较好用。本人也写了基于UIAutomation 的轻量级的自动化框架,将在以后的博文中引出。那在Android 操作系统中能不能做类似于UI Automation 的事情呢?不幸的是,Android 的权限控制分的非常清楚,不同程序之间的数据访问只能通过 Intent,contentprovider 类似的功能实现。也就是说你开发的运行在Android 中的自动化程序想要捕获当前运行的AUT (Application under Test) 界面上的控件等Element(该术语引自UI Automation,觉得翻译成元素有点生硬,故不作翻译)基本不可能,你也拿不到当前active activity的引用(截止本文发帖为止,个人暂时没有找到办法获得此引用)。无路可走了?模拟器里面不能走,外面能不能走?或许可以。第二部分:捕获Activity上的Element在Android 的SDK 中自带了一个对自动化测试比较有用的工具:hierarchyviewer(位于SDK 的tools 目录下)。在模拟器运行的情 况下,使用该工具可以将当前的Activity上的Element 以对象树的形式展现出来,每个Element 所含的属性也能一一尽显。这有点像Windows 上运行的UI SPY,唯一遗憾的是不支持事件的触发。不过没有关系,可以想办法绕,当务之急是能在自行编写的自动化测试代码里找到 Activity上的Element。第一个想到的办法就是看 hierarchyviewer 源码,不巧,网上搜了一下,没有资源。或许 Google 的官网上有,但是上不去。看来只能反编译 了,找来 XJad,暴力之。虽然反编译出来的代码很多地方提示缺少 import,但代码基本上是正确的。看了一下,确实也知道了许多。后来在编写代码的过 程中,确实也证明了如果想引用hierarchyviewer.jar 这个包并调...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

Android_自动化测试

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部