创建 Robotium 测试工程
前面学习了instrumentation框架,现在来学习robotium了解怎么使用不就是一个晚上的事吗,robotium也是基于Instrumentation框架的。一般用于app的功能性测试,不能跨app一次只能运行一个app。
好了下面就开始新建robotium工程。首先我们要去官网下载robotium jar包,下载最新的就好了。这里是下载地址:https://code.google.com/p/robotium/wiki/Downloads?tm=2,下载完了后就该导入到测试工程里了。
1.跟之前的instrumentation一样的建立个测试工程,继承ActivityInstrumentationTestCase2.工程建立好后,右键点击测试工程,选择build path——>configure build path 如图
在弹出的对话框里的libraries里选择add external jars里添加我们之前下载的robotium jar包,这就导入好了robotium jar包了。
我们在点击order and export选项,在这里面勾选robotium jar包。
然后点击ok,这样我们就可以开始写代码了。
2.这里还是用之前的那个app,这是一个很简单的app,由于之前的那个instrumentation工程大家都不知道app是什么样的,这里就贴个图,主界面是这样的点击左边的button上面的Hello World!会变成Beautiful Girl
点击右边的跳转会跳转到另一个界面,如图
就是这么一个app。同样我们要在manifest.xml文件里加上instrumentation这个标签,因为robotium也是继承的这个类。跟上一个工程一样,
然后就开始写代码了,robotium的调用很简单,用solo这个类去调用,我们这里同时加入了上一篇文章instrumentation的方法,首先是声明我们会用到的控件和activity,这里我要用到instrumentation里面assertEquals这个方法去断言textview,所以要定义textview1、activity这两个变量。
然后是在默认的setUp()这个方法里去获取我们的控件和avitivity这些获取的方法必须写在setUp()这个方法里,因为setUp()这个方法是在执行每个case前都会执行的重置app把app还原的方法,tearDown()这个方法是在执行完每个case后都会执行的清空app数据的方法。所以这些获取控件的方法必须要定义在setUp()这个方法里让执行每个case前重新去获取。
下面就可以开始写我们想要测试的case了,用robotium里面的solo这个方法去调用这些方法,这些方法可以去看robotium的源码,了解了robotium里的这些方法就随便调用就是了,我现在也一直在看,下面我会发出一个我在github上看到的一位大神对robotium源码全部注释了的链接,大家可以去下载看看。
好了,这就是一个简单的用robotium工具实现的测试case,这里只是告诉了大家怎么去用robotium工具,没有去讲解robotium的源码是怎么实现这些操作的,大家可以去深入的了解robotium源码,这样对robotium里定义的方法都熟悉了调用起来也就方便了。Robotium的源码注释链接:https://github.com/bobotiger2/robotium
转载于:https://blog.51cto.com/8197359/1417812
创建 Robotium 测试工程相关推荐
- Maven 创建、测试工程
创建工程 Maven 使用原型(archetype)插件创建工程. cd d: cd eclipse-workspace mvn archetype:generate -DgroupId=com.wj ...
- RadASM的测试工程!
RadASM已经安装完毕了,是否可以正常工作了呢?我们通过创建一个工程来测试一下,下面就是创建这个测试工程的过程: 1, 2, 3, 4, 5, 6, 7, 8, 9, 至此,我们通过RadASM的模 ...
- PCL——1.介绍及工程创建与测试
目录 pcl介绍 工程创建与测试 CMakeLists.txt内容解释 pcl介绍 对于3D点云处理来说,PCL完全是一个模块化的现代C++模板库.其基于以下第三方库:Boost.Eigen.FLAN ...
- maven 主工程 java_Maven创建Java Application工程(既jar包)
Maven在创建工程时使用的是archetype(原型)插件,而如果要创建具体的工程,比如Application这些,那么可以使用maven-archetype-quickstart(相当于一个子类型 ...
- App开发流程之创建项目和工程基本配置
我的开发环境为:Mac OS X EI Capitan(10.11.6),Xcode 7.3.1 首先说明一下这个项目的初衷,我并非要创建一个完整的上架应用,旨在创建一个可运行的,通用配置.架构,提供 ...
- idea的几个好用快捷键、常用配置(包括git)、jdk和javaSE和javaEE、创建一个SE工程、debug、创建一个Web工程、打war包
几个好用的快捷键(持续更新) Ctrl+Shift+f12 ,相当于myeclipse的ctrl+m 最大化窗口的 alt+shift+↑或↓,将当前行上移或下移 shift+enter ,当前行下一 ...
- Eclipse创建java web工程
Eclipse创建java web工程 eclipse版本:eclipse-jee-4.5-win32-x64 tomcat版本:apache-tomcat-7.0.63-windows-x64 jd ...
- SoapUI——创建一个SOAP工程
本章简单介绍SOAP工程包括创建工程,介绍面板区域功能. 目录 前言 1 创建工程 1.1 SOAP 工程 1.2 REST 工程 2 引入工程 前言 SoapUI工程在导航树的根节点下,Soap工程 ...
- Vue-cli创建Vue项目工程步骤详解
Vue-cli 即:Vue脚手架.官方网址:vue-cli官网 本篇文章以我经常创建Vue项目工程的步骤为例,带着大家一步一步创建一个全新的vue项目工程.文章会详细讲解Vue脚手架创建项目的每一个步 ...
最新文章
- uboot中添加hi35xx的GPIO设置
- Python初学者必学的20个重要技巧
- 用户画像技术及方法论
- BZOJ3709: [PA2014]Bohater
- 飞桨第三课2020.4.2
- 跳一跳python源码下载_python 微信跳一跳和源码解读
- 电机的入门之路系列4--PWM控制直流电机
- 使用Mongo Shell和Java驱动程序删除MongoDB的示例
- MacOSX 下.app支持同时运行多个实例
- linux中/etc/fstab文件删除或修改了,导致系统无法启动
- 什么软件能打开Android,哪位晓得apk文件用什么软件打开
- IDEA GIT 单文件回退到指定版本
- 【每周一爬】爬取盗版小说网的小说
- Linux如何固定ip地址,及ifcfg-ens33文件参数
- 【Tensorflow教程笔记】TensorFlow Datasets 数据集载入
- 模电——运放输入/输出接小电阻
- js中无区别分割中英文逗号的字符串成为数组
- 测试工程师面试题mysql_测试工程师sql笔试题都在这里了!
- 黑马程序员Java基础班+就业班课程笔记全发布(持续更新)
- 利用node.js搭建服务器并访问静态网页