简单介绍如何使用robotium进行自动化测试
1. 创建一个简单的工程()作为被测程序,运行后显示如下界面:
2. 创建一个Test Project
1). 打开eclipse,选择File->New->Project…->Android Test Project,点击Next。
2). 在Test Project Name中输入测试工程的名称,如:HelloWorldTest。选择An existing Android Project,点击右边的Browse…按钮。
3). 选择被测工程,如之前创建的HelloWorldnp,点击OK按钮。
4). 会自动选择和输入Build Target和Properties,可以按照默认的,不用修改。
5). 一个新建的测试工程(HelloWorldTest)就创建好了,如下图:
3. 创建一个Test Case
1). 在HelloWorldTest->src->com.liliandroid.helloworld.test上,右击选择New->Class,创建一个Test Case。
2). 在Name中输入Test Case的名字,如:UITextTest。
3). 创建好的Test Case如下图:
4. 导入robotium.jar
1). 选择测试工程HelloWorldTest右击,选择Build Path->Configure Build Path…
2). 在打开的Properties for HelloWorldTest中点击Add External JARs…按钮。
3). 因为之前创建的工程的SDK是2.2的,所以选择robotium-solo-1.8.0.jar。
4). 点击OK按钮。
5. 修改Test Case
打开UITextTest.java,输入以下内容并保存:
package com.liliandroid.helloworld.test;
import android.test.ActivityInstrumentationTestCase2;
//此处导入的是被测试工程的activity
import com.liliandroid.helloworld.ActivityMain;
import com.jayway.android.robotium.solo.Solo;
publicclass UITextTestextends ActivityInstrumentationTestCase2<ActivityMain>{
//ActivityMain 为测试APK的启动activity
private Solo solo;
publicUITextTest() {
super("com.liliandroid.helloworld", ActivityMain.class);
}
publicvoid setUp()throws Exception {
super.setUp() ;
solo=newSolo(getInstrumentation(), getActivity());
}
publicvoidtestUI()throwsException {
booleanexpected =true;
booleanactual =solo.searchText("This") &&solo.searchText("is");
assertEquals("This and/or is are not found", expected, actual);
}
}
注:这个Case是测试运行了ActivityMain后的界面上是否有This和is这两个文字。
6. 运行测试程序
选择测试工程HelloWorldTest右击,选择Run As->AndroidJUnit Test运行测试程序
运行完后的测试结果界面(Pass)
运行完后的测试结果界面(Fail)
注:
1. 被测试的工程和测试的工程可以是不同的SDK,但是不知道有什么影响。
2. 这是在eclipse中进行测试的,也可以在模拟器或者手机上测试。如果需要直接在模拟器或者手机上测试,需要将测试包和被测试包改成相同的签名。(关于apk包的签名和重签名,请参考本人日志《重新签名APK文件》)
简单介绍如何使用robotium进行自动化测试的更多相关文章
- LoadRunner简单介绍----性能自动化测试工具
在做性能测试中,我认为技术可以说是武功心法,工具则是一把利剑,有一把好的利剑可以帮助自己更好的完成性能测试工作.在这里简单介绍一下LoadRunner,带大家一起来认识一下这把尚方宝剑. 一.性能测试 ...
- 1、python简单介绍
写在前面:曾经与java擦肩而过,现在懊悔很深,希望自己通过学习python,熟练掌握python,来弥补曾经的愚蠢.python简单介绍 python 1989年年底诞生,截止2017年,已经是IT ...
- Python+Selenium框架设计篇之-简单介绍unittest单元测试框架
前面文章已经简单介绍了一些关于自动化测试框架的介绍,知道了什么是自动化测试框架,主要有哪些特点,基本组成部分等.在继续介绍框架设计之前,我们先来学习一个工具,叫unittest. unit ...
- 自动化工具之Appium工具简单介绍
背景 自动化,性能测试,接口测试,开发平台等工作,到底测试的价值在哪里,其实价值来源不断充实与为大众服务,今天简单介绍ui小工具appium攻击. 简单介绍 Appium 是一个自动化测试开源工具,支 ...
- [原创]关于mybatis中一级缓存和二级缓存的简单介绍
关于mybatis中一级缓存和二级缓存的简单介绍 mybatis的一级缓存: MyBatis会在表示会话的SqlSession对象中建立一个简单的缓存,将每次查询到的结果结果缓存起来,当下次查询的时候 ...
- 利用Python进行数据分析(7) pandas基础: Series和DataFrame的简单介绍
一.pandas 是什么 pandas 是基于 NumPy 的一个 Python 数据分析包,主要目的是为了数据分析.它提供了大量高级的数据结构和对数据处理的方法. pandas 有两个主要的数据结构 ...
- 利用Python进行数据分析(4) NumPy基础: ndarray简单介绍
一.NumPy 是什么 NumPy 是 Python 科学计算的基础包,它专为进行严格的数字处理而产生.在之前的随笔里已有更加详细的介绍,这里不再赘述. 利用 Python 进行数据分析(一)简单介绍 ...
- yii2的权限管理系统RBAC简单介绍
这里有几个概念 权限: 指用户是否可以执行哪些操作,如:编辑.发布.查看回帖 角色 比如:VIP用户组, 高级会员组,中级会员组,初级会员组 VIP用户组:发帖.回帖.删帖.浏览权限 高级会员组:发帖 ...
- angular1.x的简单介绍(二)
首先还是要强调一下DI,DI(Denpendency Injection)伸手获得,主要解决模块间的耦合关系.那么模块是又什么组成的呢?在我看来,模块的最小单位是类,多个类的组合就是模块.关于在根模块 ...
随机推荐
- js string 转 int 注意的问题——parseInt
< script > var str = '1250';alert(Number(str)); //得到1250 alert(parseInt(str)); //得到1250 var st ...
- 七天学会ASP.NET MVC(1-3)源代码下载
原文路径: 中文: http://www.cnblogs.com/powertoolsteam/p/MVC_one.html 英文: http://www.codeproject.com/Artic ...
- 一:python入门
Python简介 这点就不做陈述了,相信各位朋友已经已经有了一定的了解. Python特色: 1:简单 第一次接触Python给我的感觉它的语法阅读就像是阅读一本英文书的目录一样,简单易懂,它的语法要 ...
- 初识SilkTest
简介 编辑 SilkTest 是业界领先的.用于对企业级应用进行功能测试的产品,可用于测试Web.Java或是传统的C/S结构.SilkTest 提供了许多功能,使用户能够高效率地进行软件自动化测试. ...
- cuckoo数据库变更
1.cuckoo版本升级 cuckoo默认的数据库为sqlite,默认连接方式为sqlite:///os.path.join(REPORT_ROOT, "db", "cu ...
- hadoop 2.2.0 关于map和reduce的个数的设置
关于hadoop中的map过程,我的理解是每一个map系统会开启一个JVM进程来处理,map之间相互并行,map函数内串行.这样的想法是否正确? 由于想在hadoop集群上算一个初始输入数据不多,但是 ...
- 纯 CSS 实现三角形尖角箭头的实例
上次无意中发现了个使用纯 CSS 实现三角形尖角箭头的方法 http://blog.csdn.net/zhouzme/article/details/18901943 ,但没有怎么用上,也没有详细完整 ...
- 第一百零三节,JavaScript对象和数组
JavaScript对象和数组 学习要点: 1.Object类型 2.Array类型 3.对象中的方法 什么是对象,其实就是一种类型,即引用类型.而对象的值就是引用类型的实例.在ECMAScript中 ...
- 第六十六节,htnl音频视频
htnl音频视频 学习要点: 1.音频和视频概述 2.video视频元素 3.audio音频元素 本章主要探讨HTML5中音频和视频元素,通过这两个原生的媒体元素向HTML页面 ...
- [妙味JS基础]第十一课:字符串、查找高亮显示
知识点总结 字符串方法 var str = '2014年新春快乐哈' * length 字符串长度 str.length =>10 ------------------------------- ...