Robotium简介

一.Robotium原理

Robotium是一款Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击、长按、滑动等)、查找和断言机制的API,能够对各种控件进行操作,Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测试,另外Robotium4.0版本已经支持对Webview的操作。Robotium对Activity,Dialog,Toast,Menu都是支持的。

二、Robotium优点:

  1、  能够快速的编写强大测试用例(易读、易用);

  2、  提供丰富的API库,方便对控制的操作;

  3、  支持Android1.6的所有版本(UIautomator仅支持4.1以上版本)

  4、  支持无源码的测试

  5、  基于控件、脚本移植方便(适用于不同终端)

  6、  能够顺利整合Maven或Ant进行持续集成测试

三、Robotium缺点:

  1、  本身不支持跨应用(但网上有解决方案辅助跨应用)

  2、  Robotium提供的API是面向过程的,测试代码可扩展性较差

  3、  仅支持java语言,不能跨进程(可跨Activity)

  4、  被测App与脚本不是同一线程(可能导致不同步,新谷歌框架espresso正在解决)

MonkeyRunner:任意os均可以使用,随意跨应用,不能够移植

具体情况可访问Robotium官网: 
http://code.google.com/p/robotium/

http://www.robotium.cn   (中文官网)

时间: 2024-10-13 18:47:41

Robotium简介的相关文章

Robotium入门

Android测试环境Android测试环境的核心是一个Instrumentation框架.Instrumentation框架通过将主程序和测试程序运行在一个进程来实现功能,通过Java反射机制,来获取当前窗口所有视图,并根据该视图查找到目标控件的属性信息,并计算出目标控件中心点坐标.然后,利用Instrument内部接口,实现点击操作.Android自身提供了对Instrumentation测试的基本支持,其中之一就是位于android.test包内的ActivityInstrumentati

第一章 Appium简介

随着移动终端的普及,手机应用越来越多,也越来越重要.而作为测试的我们也要与时俱进,努力学习手机App的相关测试,前一段时间我们介绍了Robotium手机自动化测试框架,从本章开始,我们介绍另一个手机自动化测试框架Appium.那究竟什么是Appium呢?我们引用Appium官网的介绍如下: 英文官网:http://appium.io/introduction.html?lang=zh 1.1 Appium 简介 Appium是一个开源的自动化测试工具,其支持iOS和安卓平台上的原生的,基于移动浏

APP自动化框架LazyAndroid使用手册(1)--框架简介

作者:cryanimal  QQ:164166060 APP自动化简介 APP自动化,即通过自动化的方式,对APP施行一系列的仿按键输入.触摸屏输入.手势输入等操作,以达到对APP的功能进行自动化测试的目的. 其一般过程如下图所示: APP自动化常用工具简介 Monkey Monkey 是Android SDK 自带的自动化测试工具,可以运行在模拟器里或实际设备中,它向系统发送随机的用户事件流,如按键输入.触摸屏输入.手势输入.Sensor 事件等, 实现对正在开发的应用程序进行表现或者压力测试

Robotium自动化测试框架实用教程(图)

一.简介 Robotium是一款国外的Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击.长按.滑动等).查找和断言机制的API,能够对各种控件进行操作.Robotium结合Android官方提供的测试框架达到对应用程序进行自动化的测试.另外,Robotium 4.0版本已经支持对WebView的操作.Robotium 对Activity,Dialog,Toast,Menu 都是支持的. 二.相关下载 源码获取:http://code

自动化测试框架对比(UIAutomator、Appium、Robotium)

一.原理 1.UiAutomator——基于UIAutomation的用户界面自动化测试框架,可以跨应用工作,谷歌亲生的. UIAutomation在Android4.3发布时有了新版本,官方简介:http://blog.csdn.net/zhubaitian/article/details/40504827. Android4.3之前:使用inputManager或者更早的WindowsManager来注入KeyEvent Android4.3之后:使用Accessibility APIs来注

Robotium源码分析之Instrumentation进阶

在分析Robotium的运行原理之前,我们有必要先搞清楚Instrumentation的一些相关知识点,因为Robotium就是基于Instrumentation而开发出来的一套自动化测试框架.鉴于之前本人已经转载和编写了Instrumentation的一些文章,所以建议大家如果没有看过的还是翻看下先对Instrumentation有个基本的理解.然后带着疑问再来看这篇文章看是否能帮上自己. 既然是分析Instrumentation,那么我们必须要先看下Instrumentation 这个类的类

Android网络通讯简介

网络通信应该包含三部分的内容:发送方.接收方.协议栈.发送方和接收方是参与通信的主体,协议栈是发送方和接收方进行通信的契约.按照服务类型,网络通信可分为面向连接和无连接的方式.面向连接是在通信前建立通信链路,而通信结束后释放该链路.无连接的方式则不需要在通信前建立通信连接,这种方式不保证传输的质量. Android提供了多种网络通信的方式,如Java中提供的网络编程,在Android中都提供了支持.Android中常用的网络编程方式如下: 针对TCP/IP协议的Socket和ServerSock

微信红包的架构设计简介

@来源于QCon某高可用架构群整理,整理朱玉华. 背景:有某个朋友在朋友圈咨询微信红包的架构,于是乎有了下面的文字(有误请提出,谢谢) 概况:2014年微信红包使用数据库硬抗整个流量,2015年使用cache抗流量. 微信的金额什么时候算? 答:微信金额是拆的时候实时算出来,不是预先分配的,采用的是纯内存计算,不需要预算空间存储.. 采取实时计算金额的考虑:预算需要占存储,实时效率很高,预算才效率低. 实时性:为什么明明抢到红包,点开后发现没有? 答:2014年的红包一点开就知道金额,分两次操作

JSON 简介

ylbtech-JSON: JSON 简介 JSON:JavaScript Object Notation(JavaScript 对象表示法) JSON是存储和交换文本信息的语法,类似 XML. JSON 比 XML 更小.更快.更易解析. JSON 实例 { "employee":[ {"firstName":"John","lastName":"Doe"}, {"firstName"