Android+Robotium
因为调动到一个新的部门在这个部门做的一直就是移动产品,所以这段时间会一直不断的研究app的自动化,主要是针对android,这里我采用的是Robotium框架,这个框架比较简单,使用eclipse+robotium包ok了,前提是搭建了android的开发环境。
自己在刚开始学习时在网上找了很多的资料,可是对一个新手来说比较难上手,不过没办法只有自己慢慢的摸索,经过请教同事、网上搜寻答案后终于有了一定的眉目,下面说一下对新手来说大概的一个方向:
1、android开发环境的搭建(其实在网上看了很多的资料都一步一步的说怎么配置,个人觉得没有那么麻烦,在请教了开发之后大家可以直接在android的官网上去下载他的一个包,在这个包里面所有东西都有了,直接解压用)
地址:http://developer.android.com/sdk/index.html 怎么下载就不用说了吧!JDK记的配置 是不是顿时觉得明白了,没有网上说的那么繁琐。
2、环境搭建好之后要创建一个android的开发环境。这个为什么?说实在的我也不是很清楚,因为我在最开始的时候按照网上说的直接创建一个TestProject可是这样直接报错的。再在这基础上创建TestProject就不会出错了。
(这里有必要说一下,因为我做的基本都没办法拿到源码所以针对的就是apk测试,在创建TestProject要选择This Project就行)
3、接下来要引入robotium包,这个不用说了吧,最好在你的工程里面只有android sdk的包和robotium的包,不然容易报错,以前就遇见一个让我困惑很久。
4、万事俱备只欠东风,现在只需要创建一个TestCase就可以了,不过这里有必要说一下Test名子需要命名为:ActivityInstrumentationTestCase2,因为这个是继承过来的,但是你只是将这个名子取成这个是不行的,在打开case后需要引入这个的,import android.test.ActivityInstrumentationTestCase2;
5、基础设施弄好之后需要将solo包引入,不然没办法用:import com.jayway.android.robotium.solo.Solo;
使用过程中刚搭建好的环境:
import android.app.Activity;
import
android.test.ActivityInstrumentationTestCase2;
ActivityInstrumentationTestCase2 {
public Solo solo;
public
Activity activity;
private static Class<?>
launchActivityClass;
//这里是经过签名后的包名子以及签名文件,我们执行case是根据这个来的
private static String mainActiviy =
"com.eduu.bang.app.SplashActivity";
private static String packageName =
"com.eduu.bang";
//试着启动
static {
try {
launchActivityClass =
Class.forName(mainActiviy);
} catch (ClassNotFoundException e) {
throw
new RuntimeException(e);
}
}
public HomeTest()
{
super(packageName, launchActivityClass);
}
Exception {
super.setUp();
this.activity =
this.getActivity();
this.solo = new Solo(getInstrumentation(),
getActivity());
}
Exception {
super.tearDown();
}
//下面这个就是我们的TestCase
public void
testRead(){
solo.clickOnText("发现");
}
Android+Robotium的更多相关文章
- 命令行运行Android Robotium自动化用例或单元测试用例
本文目录 1.运行所有的测试用例 2.运行单个测试类或某个TestSuite 3.运行某个测试类里面的某个测试方法 4.运行两个不同的测试类或类中的方法 命令行运行Android Robotium自动 ...
- [Android] Robotium手机自动化测试(仅需apk安装包版)——环境搭建 【转】
Robotium的手机自动化测试,很多都是利用app源代码里的Id定义来开发自动化脚本.而在我开始要为项目中的app写自动化测试脚本的时 候,开发的环境还很不稳定,app也还处于开发的状态中,而且,在 ...
- [转]Android Studio 里搭建自动化测试框架Robotium
Android的自动化测试框架可选择的不多,后来选了Robotium(https://code.google.com/p/robotium/),它的语法及易用性挺像我们用在iOS里的KIF. 官方文档 ...
- 使用robotium对android应用进行自动化测试
所需要的环境: 1.eclipse 2.android development tools(ADT) 3.software develoment kit(SDK) 4.JDK 5.robotium 1 ...
- Android Instrumention.sendPointerSync发送Event失败分析
问题场景 Android4.3,进入被测app某个Activity后,测试案例ClickOnScreen出现异常(Click can not be completed!). Android4.4正常. ...
- 安卓自动化测试(2)Robotium环境搭建与新手入门教程
Robotium环境搭建与新手入门教程 准备工具:Robotium资料下载 知识准备: java基础知识,如基本的数据结构.语法结构.类.继承等 对Android系统较为熟悉,了解四大组件,会编写简单 ...
- 5 Best Automation Tools for Testing Android Applications
Posted In | Automation Testing, Mobile Testing, Software Testing Tools Nowadays automated tests ar ...
- Robotium学习笔记一
一. 重签名问题 1.从手机Pull所需的apk通过压缩工具删除META-INF目录 2.通过以下命令行进行签名 >jarsigner -keystore "C:\Documents ...
- Android 测试工具集02
User scenario testing for Android(功能性测试框架) Robotium is an Android test automation framework that has ...
随机推荐
- Linux学习笔记:CentOS安装MySQL
[1]安装版本: 1.1 CentOS-7-x86_64-Everything-1503-01 1.2 MySQL-5.6.27-1.linux_glibc2.5.x86_64.rpm-bund ...
- flashback database 基本介绍一
flashback database 整个架构包括一个进程recover writer (rvwr)后台进程,flashback database log 日志和flash recovery area ...
- 一个鼠标键盘控制两台甚至多台主机的方法--Synergy
在多台主机,不同系统中操作.避免了更换键鼠的麻烦.即使下面图中的功能. 鼠标同时在三台或者多台主机之间进行移动,而且是无缝滑动,鼠标直接从左滑倒右,而且支持,这台电脑复制,另一台黏贴.非常的方便实用. ...
- SDK "iphoneos" cannot be located
在MAC下,交叉编译libvlc出现的一些问题和解决方法.项目中使用了libvlc开源库.在执行编译脚本中,遇到一句xcrun --sdk iphoneos --show-sdk-path报错 mac ...
- jquery easyui的异步tree
1.创建一个简单的tree 结果如图: <script> $(function(){ $('#tt').tree(){ url:'要提交的url地址', checkbox:true, li ...
- ALAsset,ALAssetsLibrary,ALAssetsgroup常见属性及用法
转载自 http://www.cnblogs.com/javawebsoa/archive/2013/07/19/3201246.html ALAssetsgroup --------------- ...
- 《UNIX环境高级编程》笔记--更改用户ID和组ID
在unix系统中,特权是基于用户和组ID的,当程序需要增加特权,或需要访问当前并不允许访问的资源时,我们需要更换自己 用户ID或组ID,使的新ID具有合适的特权或访问权限.与此类似,当程序需要降低其特 ...
- Castle ActiveRecord学习实践
Castle是针对.NET平台的一个开源项目,从数据访问框架ORM到IOC容器,再到WEB层的MVC框架.AOP,基本包括了整个开发过程中的所有东西,为我们快速的构建企业级的应用程序提供了很好的服务. ...
- static关键字修饰类
今天继续研究公司的新项目,据说是京东的架构,研究看了一番,果然很牛逼,大致是Maven+spingmvc+spring+mybatis+ehcache+velocity来搭建的,数据库用的是mysql ...
- Uestc_suibian 暑假集训总结
唉,终于组队了,终于可以只BB了,我就BB,我就不上! 和Xiper以及chenxh组队了- 下面是总结: day1 第一天吃饱喝足,然后就上路了,我一开始就看到了C题大水题,但是我不敢想象这道题居然 ...