[Android] Robotium手机自动化测试(仅需apk安装包版)——环境搭建 【转】
Robotium的手机自动化测试,很多都是利用app源代码里的Id定义来开发自动化脚本。而在我开始要为项目中的app写自动化测试脚本的时 候,开发的环境还很不稳定,app也还处于开发的状态中,而且,在需要自己搭建Android整个开发环境的时候,也遇到许多需要耗费很多时间去解决的开 发问题。因此,我觉得,在这种情况下,如果自己的自动化脚本环境能和开发完全独立,那么,应该可以更好地展开自动化脚本的开发。所以,在网上一番探索后, 选择了只需要apk安装包的方法。
当然,这样也会遇到问题,比如,在开发还没有完全结束前,app的功能会随时发生变化,而在原有基础上开发好的自动化脚本也就需要很多的 rework。但是,我希望的是,在app的功能还没有完全稳定前,可以根据现有的app,把整个自动化开发框架搭好,此后,便可以在这个框架的基础上, 很轻松地去改一些细微的功能变动部分的自动化脚本。
所以,从测试的角度上看,仅需要apk安装包的方式,主要有以下几个优点:
1. 测试人员无需在Eclipse中搭建复杂的Android开发环境(基本的Android SDK和Java环境还是必需的。)
2. 在app还没开发完全的情况下,测试人员可以根据大致的app功能,把自动化开发框架建好,以利于后期对具体功能展开自动化脚本的开发。
3. 在进行自动化测试时,即使不用到持续集成,也可以较为方便地测试迭代中的app——只需要在测试设备上(模拟机或者手机)安装最新的app即可。
下面就来介绍下,这种仅需apk安装包版的Robotium手机自动化开发环境的准备。
1. 从开发人员处获取apk安装包/或者Git等源代码控制工具中获取源代码
在我的项目中,是开发的源代码是使用MVN作为项目管理工具,所以,只需要打开命令提示符(cmd),然后进入app的源代码,敲入mvn install,即可得到apk文件
例如:
1) cd .../TestApp
2) mvn install
3) Build Success后,在TestApp目录下找到target目录,在target目录中,即可找到最新生成的apk文件。
2. Android的apk发布,需要签名。具体信息,详见:http://developer.android.com/tools/publishing/app-signing.html
为了顺利在测试设备上安装apk,我们需要对拿到的apk进行重新签名(Re-sign)。
重新签名的工具,网上很多,我使用的是re-sign.jar。
在用户目录下,会有一个.android的目录,把re-sign.jar放在该目录下。
Re-sign步骤如下:
1) 打开命令提示符:cmd
2) cd .../.android
3) 运行java -jar re-sign.jar,打开resign工具
4) 把最新的apk文件拖拽到打开的resign工具中,完成后,就会产生一个重新签名的apk文件。
Ps: resign后,会得到一个package name和main activity name,我们需要记下这两个名字,在第4步中会用到。
3. 在模拟机中安装重新签名后的apk文件,步骤如下:(在真机中安装与模拟机类似,具体操作,Google或者Baidu即可)
1) 打开Android SDK安装目录
2) 找到sdk下的platform-tools目录
3) 把重新签名后的apk文件放在该目录下
4) 打开命令提示符:cmd
5) cd .../sdk/platform-tools
6) 打开要安装apk的模拟机
7) 运行命令:adb install testedapp.apk。看到Success,说明apk已经安装成功了。
Ps: 在安装apk之前,确保旧版的app已经在模拟机中卸载完成。否则,执行该命令,会提示说安装失败。
4. 在eclipse中,新建一个Android Test Project,进行配置,使得自动化脚本与要测试的apk进行关联。
[Android] Robotium手机自动化测试(仅需apk安装包版)——环境搭建 【转】的更多相关文章
- Android APK安装包瘦身[转]
很显然,APK安装包越小越好.下面从代码,资源文件,使用策略几个方面简要介绍下: 代码 保持良好的编程习惯,不要重复或者不用的代码,谨慎添加libs,移除使用不到的libs. 使用proguard混淆 ...
- 【Android Studio安装部署系列】十、Android studio打包发布apk安装包
版权声明:本文为HaiyuKing原创文章,转载请注明出处! 概述 使用Android studio发布apk安装包的操作步骤. 开始打包发布apk Build > Generate Signe ...
- 配置Windows Server2008+iis+php+mysql所需下载安装包
最近一个朋友让我帮忙给配置服务器iis+php+mysq 环境,遇到了很多问题,特此就在这里说一下.小弟只是在windwos2003 和windwos XP下配置过iis+php+mysql,去朋友那 ...
- 使用zipalign.exe工具优化APK安装包
zipalign.exe是Android自带的一个档案整理工具,它可以用于优化APK安装包,从而提升Android应用与系统之间的交互效率,提升应用程序的运行速度. 操作步骤: 1.在命令行窗口输入如 ...
- 打包文件到APK安装包中
打包文件到APK安装包中 目的:将配置文件或SQLITE打包进APK中 1.首先,打开菜单 Project - Deployment 2.点击添加按钮,选择要添加的文件(文件最好放在工程目录中,这样, ...
- apk安装包信息
String archiveFilePath="sdcard/DangDang.apk";//安装包路径 PackageManager pm = getPacka ...
- 菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven)
菜鸟学自动化测试(八)----selenium 2.0环境搭建(基于maven) 2012-02-04 13:11 by 虫师, 11419 阅读, 5 评论, 收藏, 编辑 之前我就讲过一种方试来搭 ...
- Mac上反编译Android apk安装包
什么是反编译 我们知道,Android的程序打包后会生成一个APK文件,这个文件可以直接安装到任何Android手机上,因此,反编译就是对这个APK进行反编译.Android的反编译分成两个部分: 一 ...
- Android 开发基础入门篇: 生成带有签名的apk安装包
说明: 软件默认生成的安装包没有签名,现在手机安装APP的时候要求,安装包必须有签名才可以 默认生成的APK位置 现在生成带有签名的APK 我一般放到当前工程根目录,然后文件名字 key 有些时候需要 ...
随机推荐
- 学习js第一天小结
1.JavaScript的书写方式: <script type="text/javascript"> </script> <script sr ...
- Ramdisk虚拟内存盘,Swap分区
虚拟内存盘是通过软件将一部分内存(RAM)模拟为硬盘来使用的一种技术.相对于直接的硬盘文件访问来说,这种技术可以极大的提高在其上进行的文件访问的速度.但是RAM的易失性也意味着当关闭电源后这部分数据将 ...
- Noip数学整理
目录 Noip数学整理 序 1 取模相关 2 质数相关 3.基本操作 4.方程相关 5.数列相关 6.函数相关 Noip数学整理 序 因为某些原因, Noip对于数学方面的考纲仅停留在比较小的一部分, ...
- mysql自动创建分区
call Insert_Partition('2018-07-07','2019-01-01'); 存储过程 BEGIN DECLARE nowdate date; DECLARE endtmp da ...
- truncate(can)
1. 如果给了参数, 从头截取到参数位置 2. 如果不给参数, 从头截取到光标 f = open("司马光砸缸", mode="r+", encoding=&q ...
- MySQL密码强度验证修改
MySQL5.6.6版本之后增加了密码强度验证插件validate_password,相关参数设置的较为严格. 影响的语句和函数有:create user,grant,set password,pas ...
- StanFord ML 笔记 第五部分
1.朴素贝叶斯的多项式事件模型: 趁热打铁,直接看图理解模型的意思:具体求解可见下面大神给的例子,我这个是流程图. 在上篇笔记中,那个最基本的NB模型被称为多元伯努利事件模型(Multivariate ...
- mysql5.7-windows安装配置
sonar要求mysql5.6版本以上,所以安装一下最新的mysql5.7 采用相对名路径和命令行启动,这样是为了方便迁移.也提供了加入服务的指令,但没有进行测试 解压mysql的zip压缩包 解压后 ...
- iOS如何把所有页面状态栏的字体颜色都设置为白色
第一步:在info.plist中添加一个字段:view controller -base status bar 设置为NO 第二步:在一个所有界面都继承的父类里添加: if (IOS7_OR_LATE ...
- transport error 202: bind failed: 地址已在使用
tomcat启动报错是因为:在catalina.sh中设置了调试启动参数 编辑catalina.sh全局搜索下 address= 去掉或者改一下address端口号,重启tomcat 另一种情况可能是 ...