代码改变世界

随笔分类 -  Android

安卓自动化测试工具monkeyrunner的iQuery插件使用说明

2012-11-10 20:15 by 知平软件, 1200 阅读, 收藏, 编辑
摘要: 刚刚上传了monkeyrunner的iQuery插件,完整下载和示例代码请在此下载: https://github.com/downloads/vowei/iQuery/iquery%20monkeyrunner%20plugin%20sample.zip 示例代码是随便找的针对大众点评写的,因此请确保手机上已经安装了大众点评的应用。示例代码下载后,请设置一个变量:“ANDROID_HOME”... 阅读全文

自动化测试里的开源工具

2012-10-17 22:08 by 知平软件, 1021 阅读, 收藏, 编辑
摘要: 周六要做一个分享,因此这一周都没有时间写测试方面的文章,把要分享的PPT拿出来:http://www.vowei.com/slide/automation/需要用Chrome才能看,IE看有点问题,幻灯片里主要是讲网页和手机端自动化测试用到的工具。关于Windows Phone 7的自动化测试,幻灯片里没有提,虽然Windows Phone 7并不自带对自动化测试的支持,但是可以在模拟器上可以实现类似的效果,主要原理是:Windows Phone的模拟器是采用WPF技术实现的,因此针对Windows Phone 7模拟器上的应用的自动化测试,实际上就变成了对WPF程序的测试。 阅读全文

修改android monkey源码使其支持UI自动化测试

2012-10-12 19:47 by 知平软件, 5222 阅读, 收藏, 编辑
摘要: 在Android平台上,如果要实施自动化测试的话,有几个方式,比如使用基于Instrumentation类库及其衍生类,或者是使用monkeyrunner,测试用例运行在PC上,通过USB或者WIFI向Android手机的应用发送测试命令。这两个方案各有优缺点:1、 Instrumentation技术的优点是编写UI自动化测试用例的技术跟编写Android应用的技术是同一个技术,而且API也是使用Android本身的类库。但是它的缺点是需要待测应用使用调试用密钥进行数字签名,这是因为Android平台强制要求一个应用如果要读取或者修改另外一个应用的状态的话,必须是同一个实体,而同一个实体的证据 阅读全文

Android自动化测试在多种屏幕下的注意事项

2012-10-03 13:50 by 知平软件, 2406 阅读, 收藏, 编辑
摘要: 在编写Android自动化测试用例的时候,可能会碰到这样的情况,在一个Android版本的模拟器上运行的好好的测试用例,在另一个版本的Android模拟器上就运行不正常了。基本症状是,在测试代码里获取一个View的实例,然后通过robotium的click函数点击它: View view = ... // 在代码里获取要点击的View的实例 solo.click(view); // 然后点击它... 阅读全文

扩展iQuery使其支持多种编程语言(四) – 兼编译器的语法错误处理简介

2012-09-28 16:50 by 知平软件, 1534 阅读, 收藏, 编辑
摘要: 扩展iQuery使其支持多种编程语言(四) – 兼编译器的语法错误处理简介 iQuery是一个开源的自动化测试框架项目,有兴趣的朋友可以在这里下载:https://github.com/vowei/iQuery/downloads 源码位置:https://github.com/vowei/iQuery 相关的使用文档,请参看: 开源类库iQuery Android版使用说明 类j... 阅读全文

扩展iQuery使其支持多种编程语言(三) – 兼编译器的语义分析简介

2012-09-24 16:20 by 知平软件, 1402 阅读, 收藏, 编辑
摘要: iQuery是一个开源的自动化测试框架项目,有兴趣的朋友可以在这里下载:https://github.com/vowei/iQuery/downloads源码位置:https://github.com/vowei/iQuery相关的使用文档,请参看:开源类库iQuery Android版使用说明类jQuery selector的控件查询iQuery开源类库介绍开源手机自动化测试框架iQuery入门教程(一)开源手机自动化测试框架iQuery入门教程(二)开源手机自动化测试框架iQuery入门教程(三)在上一篇文章中,简单介绍了iQuery解释器的语义分析部分。ANTLR使用的LL(*)的语法解 阅读全文

开源手机自动化测试框架iQuery入门教程(三)

2012-09-19 16:00 by 知平软件, 2025 阅读, 收藏, 编辑
摘要: 前几篇入门教程请参看: 开源类库iQuery Android版使用说明 类jQuery selector的控件查询iQuery开源类库介绍 开源手机自动化测试框架iQuery入门教程(一) 开源手机自动化测试框架iQuery入门教程(二) iQuery是一个开源的自动化测试框架项目,有兴趣的朋友可以在这里下载:https://github.com... 阅读全文

开源手机自动化测试框架iQuery入门教程(二)

2012-09-12 17:47 by 知平软件, 1859 阅读, 收藏, 编辑
摘要: 上次介绍iQuery之后,已经有些朋友在开始在手机自动化测试程序里试用iQuery了,由于之前的介绍文档比较含糊,先搁置扩展iQuery使其支持多种编程语言的系列文章,补充一下iQuery的入门教程,之前写的介绍性文章可以参考: 1. 开源类库iQuery Android版使用说明 2. 类jQuery selector的控件查询iQuery开源类库介绍 3. 开源手机自动化测试框架iQuery入门教程(一)iQuery是一个开源的自动化测试框架项目,有兴趣的朋友可以在这里下载:https://github.com/vowei/iQuery/downloads源码位置:https:... 阅读全文

开源手机自动化测试框架iQuery入门教程(一)

2012-09-07 13:12 by 知平软件, 2791 阅读, 收藏, 编辑
摘要: 应网友要求,添加iQuery使用的简易教程系列,并简单介绍iOS程序和Android程序的自动化测试编写的方法。 阅读全文

扩展iQuery使其支持多种编程语言(二) – 兼编译器的语法分析简介

2012-09-03 09:58 by 知平软件, 1720 阅读, 收藏, 编辑
摘要: iQuery是一个开源的自动化测试框架项目,有兴趣的朋友可以在这里下载:https://github.com/vowei/iQuery/downloads 源码位置:https://github.com/vowei/iQuery 在上一篇文章中,简单介绍了iQuery解析器的词法分析部分,本文接着将语法分析部分解释完毕,阅读完本文后,应该可以将iQuery扩展到其他编程语言上。 下面是iQu... 阅读全文

扩展iQuery使其支持多种编程语言(上) – 兼编译器的词法分析简介

2012-08-27 12:38 by 知平软件, 2037 阅读, 收藏, 编辑
摘要: iQuery在设计的时候就考虑到对其他编程语言的支持,本文主要是通过讲解iQuery的词法分析,为后文的编程语言扩展做铺垫,读者也可以从中学到实现一门编程语言中使用词法分析的方法。 阅读全文

原创开源项目 - 扩展iQuery

2012-08-24 15:16 by 知平软件, 2098 阅读, 收藏, 编辑
摘要: 为了满足跨平台一致的控件查询这个目标,iQuery支持多种编程语言,通过伪类和伪属性的设计来隐藏各平台的差异性,而无论是伪类、伪属性,还是对多编程语言的支持,iQuery都是可以扩展的,本文介绍扩展iQuery的方法 阅读全文

Android工具HierarchyViewer代码导读(4) -- 前台代码

2012-08-22 13:45 by 知平软件, 3390 阅读, 收藏, 编辑
摘要: 在前文<Android工具HierarchyViewer 代码导读(3) -- 后台代码>中,我们讲解了HierarchyViewe的后台代码,指的是HierarchyViewer如何通过ADB和ViewServer这两个信道和Android设备进行通信,获取Acitivities信息、控件信息和控件截图等信息。本文将讲解HierarchyViewer的前台代码,指的是在后台获取到数据后,Hier... 阅读全文

开源类库iQuery Android版使用说明

2012-08-20 10:44 by 知平软件, 2898 阅读, 收藏, 编辑
摘要: iQuery是一个通用的跨平台的控件查询类库,其语法类似jQuery,但你可以在iOS、Android、selenium、甚至是桌面GUI程序上使用它。在iQuery之前,要在界面中查询一个控件,特别是自动化测试用例程序中,是比较麻烦的事情,而iQuery不仅可以用一段简洁的文本精准定位控件,还为使用同一个查询语句执行跨平台控件查询提供可能。 继上周发布iQuery iOS版发布之后,我们再接再... 阅读全文

Android工具HierarchyViewer 代码导读(3) -- 后台代码

2012-08-08 08:53 by 知平软件, 9590 阅读, 收藏, 编辑
摘要: 在上文中,我们讲解了如何把HierarchyViewer的项目导入到Eclipse中,以便更高效阅读代码。本文将讲解HierarchyViewer的后台代码,建议大家可以先阅读<Android工具HierarchyViewer代码导读(1) -- 功能实现演示>一文, 其中的代码演示了HierarchyViewer的主要功能。而本文就是讲解HierarchyViewer是如何实现功能的。 ... 阅读全文

Android工具HierarchyViewer 代码导读(2) -- 建立Eclipse调试环境

2012-08-03 11:51 by 知平软件, 5391 阅读, 收藏, 编辑
摘要: 在上文<Android工具HierarchyViewer 代码导读(1) -- 功能实现演示>中,我们介绍了HierarchyViewer主要技术点的实现。虽然我们还没有涉及到HierarchyViewer的源代码,但是利用上节所讲到的知识,读者甚至已经可以实现一个自己的HierarchyViewer了。本文的内容比较轻松,我们将介绍如何把Android源代码中的HierarchyViewer项目和依赖项目导入Eclipse中,通过Eclipse阅读和调试将提高我们理解的效率,所谓磨刀不误砍柴工。如果你没有安装Eclipse,可以在Eclipse官网下载Eclipse IDE fo 阅读全文

收集Android程序测试代码覆盖率

2012-07-30 10:34 by 知平软件, 2461 阅读, 收藏, 编辑
摘要: 代码覆盖率的作用主要是用来查看测试用例执行完毕后,有哪些代码尚未覆盖到,未覆盖到的代码通常意味着未覆盖到的功能或场景,对于Andriod程序来说,好像国内聊到这个领域的文章不多,这里记录下来供大家参考。因为Andriod程序实际上就是Java程序,这里先不谈Andriod native C程序的代码覆盖率收集(后面的文章会讲到,其实就是用gcov做的),Java程序的代码覆盖率统计可以使用一个开源软件Emma,Emma并不需要源码就可以统计代码覆盖率 。这是因为统计代码覆盖率的做法有两种(参看以前的文章:):1、修改程序源代码,添加统计代码覆盖率的代码,例如gcov采用的就是这种做法。2、修改 阅读全文

Android工具HierarchyViewer 代码导读(1) -- 功能实现演示

2012-07-30 09:39 by 知平软件, 13289 阅读, 收藏, 编辑
摘要: HierarchyViewer是Android SDK包中一个非常好用的工具,你在 android-sdks/tools目录下可以找到它。通过HierarchyViewer,即使没有应用的源代码,我们也可以非常直观地浏览Activity中控件的层次结构图,以及每个控件的属性和截图,这对于测试人员编写自动化测试用例是极有帮助的。这个系列的文章,我们将通过阅读和解析HierarchyViewer的代码,来了解HierarchyViewer是如何工作的,也可以加深Android提供给开发者的各种接口的了解。本系列文章代码基于android4.0的源代码,还没有下载源代码的同学快去下载吧,旅程这就开始 阅读全文