1.首先新建一个要被测试的工程,命名为”robotium“;一个很简单的Android 应用程序;主页面只有个 TextView 控件;

2. 在建一个用于测试的工程 ,命名为”robotiumTestCase" ;检查被测apk的页面是否有某个字 如“hello ” “world” 等;

2.1 选择file-》new--》project----》Android test project

2.2 输入测试工程的名字 robotiumTestCase

2.3 选择被测试的项目 “robotium”  然后点击finish 完成测试项目的创建;

2.4 新建一个用于测试的测试用例 。在刚刚新建的工程 右键 选择---new ---->class ------》finish

如图

3. 导入robotium ;

3.1 将下载的 robotium-solo-xxx.jar 保存到测试工程的根目录下的libs 中,如果没有可以新创建一个libs 文件夹;如图

3.2  把robotium-solo-xxx.jar 加入到测试工程的引用路径中来;右键测试工程----选择----》build path----》configure build;

3.3 在弹出Java build path 的对话框中选择 libraries 的那个tab选项------》点击 add external JARS。。。那个按钮 添加刚刚在步骤3.1 中的保存的robotium-solo-xxx.jar

3.4 同样的在Java build path 的对话框中选择 orderand  export的那个tab选项----》选择robotium-solo-xxx.jar 并且让其置顶;

具体如图中步骤

4.添加了开原库 robotium-solo-xxx.jar ,接下来就是编写测试用例了,检查一下主页面是否有某个字;

代码如下:

package com.example.robotium.test;

import com.robotium.solo.Solo;
import android.test.ActivityInstrumentationTestCase2; public class test extends ActivityInstrumentationTestCase2 {
private Solo solo;
public test() throws Exception {
super(Class.forName("com.example.robotium.MainActivity"));
// TODO Auto-generated constructor stub
}
@Override
protected void setUp() throws Exception {
solo = new Solo(getInstrumentation(),getActivity());
} @Override
protected void tearDown() throws Exception {
solo.finishOpenedActivities();
} public void test测试用例() throws Exception{
boolean expected =true; boolean actual =solo.searchText("debbie")&&solo.searchText("xie"); assertEquals("debbie is are not found", expected, actual);
} }

5. 最后就是运行我们的测试工程了。右键测试工程,选择run as -----> andriod junit test .执行完成后,将看到一个测试结果;

看到的结果是错误的 ;因为被测试的apk 只有hello world 这些字 而没有“Debbie” or “xie"

如图:

Android test---robotium----简单例子的更多相关文章

  1. Android笔记: fragment简单例子

    MainActivity.java public class MainActivity extends Activity { @Override protected void onCreate(Bun ...

  2. android json解析及简单例子+Android与服务器端数据交互+Android精彩案例【申明:来源于网络】

    android json解析及简单例子+Android与服务器端数据交互+Android精彩案例[申明:来源于网络] android json解析及简单例子:http://www.open-open. ...

  3. IDA 调试 Android 方法及简单的脱壳实现

    IDA 调试 Android 方法及简单的脱壳实现 标签: android原创逆向调试dalvik 2016-05-24 14:24 9286人阅读 评论(3) 收藏 举报 分类: 原创(25) An ...

  4. Hibernate4.2.4入门(一)——环境搭建和简单例子

    一.前言 发下牢骚,这段时间要做项目,又要学框架,搞得都没时间写笔记,但是觉得这知识学过还是要记录下.进入主题了 1.1.Hibernate简介 什么是Hibernate?Hibernate有什么用? ...

  5. AgileEAS.NET SOA 中间件平台.Net Socket通信框架-简单例子-实现简单的服务端客户端消息应答

    一.AgileEAS.NET SOA中间件Socket/Tcp框架介绍 在文章AgileEAS.NET SOA 中间件平台Socket/Tcp通信框架介绍一文之中我们对AgileEAS.NET SOA ...

  6. spring mvc(注解)上传文件的简单例子

    spring mvc(注解)上传文件的简单例子,这有几个需要注意的地方1.form的enctype=”multipart/form-data” 这个是上传文件必须的2.applicationConte ...

  7. ko 简单例子

    Knockout是在下面三个核心功能是建立起来的: 监控属性(Observables)和依赖跟踪(Dependency tracking) 声明式绑定(Declarative bindings) 模板 ...

  8. mysql定时任务简单例子

    mysql定时任务简单例子 ? 1 2 3 4 5 6 7 8 9     如果要每30秒执行以下语句:   [sql] update userinfo set endtime = now() WHE ...

  9. java socket编程开发简单例子 与 nio非阻塞通道

    基本socket编程 1.以下只是简单例子,没有用多线程处理,只能一发一收(由于scan.nextLine()线程会进入等待状态),使用时可以根据具体项目功能进行优化处理 2.以下代码使用了1.8新特 ...

  10. 一个简单例子:贫血模型or领域模型

    转:一个简单例子:贫血模型or领域模型 贫血模型 我们首先用贫血模型来实现.所谓贫血模型就是模型对象之间存在完整的关联(可能存在多余的关联),但是对象除了get和set方外外几乎就没有其它的方法,整个 ...

随机推荐

  1. memory corruption

    今天遇到了一个比较弱的问题,但是涉及到一些东西,所以记录一下. 问题表现为,系统BOSD,在析构函数进行free的时候,有的时候是在使用buffer的过程中就BSOD. 之前是怀疑因为分配的是page ...

  2. js中java式的类成员

    function Range(from,to,x){ //实例(对象)字段 this.x=x; } //类字段 Range.Y="类字段"; //类方法 Range.s=funct ...

  3. Unity中Instantiate一个prefab时需要注意的问题

    在调用Instantiate()方法使用prefab创建对象时,接收Instantiate()方法返回值的变量类型必须和声明prefab变量的类型一致,否则接收变量的值会为null.   比如说,我在 ...

  4. vnc--centos 7 安装和配置

    安装步骤: 1.首先试试服务器装了 VNC 没 rpm -q tigervnc tigervnc-server 没安装的话会直接出现package tigervnc is not installedp ...

  5. C#对象克隆介绍

    浅拷贝和深拷贝 有两种对象克隆的方法:浅拷贝和深拷贝.浅拷贝只是复制引用,而不会复制引用的对象.深拷贝会复制引用的对象. 因此,原始对象中的引用和浅拷贝对象中的同一个引用都指向同一个对象.而深拷贝的对 ...

  6. winform基本控件的使用2(用户登录界面的设计)

    首先还是通过例子来讲解,这次的实验主要是使用messageBox的使用方法,关于messageBox的使用方法在我的博客里面有相关的转载,请自己查看,下面说一下实验要求. 功能要求:模拟一个用户登陆的 ...

  7. java容器的一些存取用法

    关于集合(list,set,map)的遍历与增强for循环的使用     java集合类的使用可以说是无处不在,总的我们可以将之分为三大块,分别是从Collection接口延伸出的List.Set和以 ...

  8. MYSQL-用户权限的验证过程

    知识点 因为MySQL是使用User和Host两个字段来确定用户身份的,这样就带来一个问题,就是一个客户端到底属于哪个host. 如果一个客户端同时匹配几个Host,对用户的确定将按照下面的优先级来排 ...

  9. ASP.NET在IIS7.5(IIS7)配置伪静态

    http://jingyan.baidu.com/article/67508eb4ff92c69cca1ce49a.html 我相信不少站长都遇到个头疼的问题..NET如何在IIS7或者IIS7.5下 ...

  10. Node.js的循环与异步问题

    (转自:http://bbs.tianya.cn/post-itinfo-280080-1.shtml) Node.js 的异步机制由事件和回调函数实现,一开始接触可能会感觉违反常规,但习惯 以后就会 ...