之前robotium的测试都是基于有源码的情况下。当我们无法获得android源码时,可以采用另一种方式进行测试。关于这种方式,robotium wiki 有相关资料提供参考 RobotiumForAPKFiles:Use Robotium when only having apk

http://code.google.com/p/robotium/wiki/RobotiumForAPKFiles

在实现整个测试过程前,先简单了解下Android应用程序签名:

Android 应用程序为什么要签名?签名的作用是什么?

签名的作用:

(1) 发送者身份的认证

(2) 保证输入信息的完整性

(3) 防止交易中的抵赖发生

Robotium 开始测试过程:

一、更换APK签名

根据robotimu wiki介绍:需要利用一个叫 re-sign.jar 的工具,它可以帮助我们重新签名某个APK.

下载:http://down.51cto.com/data/443499

1.双击 re-sign.jar 或 cmd 下 java -jar re-sign.jar

2.将应用程序拖入re-sign中,这里以“有道词典 3.1.0.apk”举例

3.生成新签名和新APK。

有道词典 3.1.0_dubug.apk

Package name:com.youdao.dict

Main activity:com.youdao.dict.activity.DictSplashActivity

二、将有“有道词典 3.1.0_dubug.apk”安装至android虚拟机中

1.进入android-sdk-windows\platform 执行命令:

adb install 有道词典 3.1.0_dubug.apk

2.安装成功后,虚拟机将会看到此应用.

三、修改 AndroidMainfest.xml 文件

创建Android测试项目:http://luwenjie.blog.51cto.com/925779/908886

        
  1. <?xmlversion="1.0"encoding="utf-8"?>
  2. <manifestxmlns:android="http://schemas.android.com/apk/res/android"
  3. package="com.luwenjie.helloworld.test"
  4. android:versionCode="1"
  5. android:versionName="1.0">
  6. //添加supports-screens
  7. <supports-screensandroid:anyDensity="true"/>
  8. <uses-sdkandroid:minSdkVersion="10"/>
  9. //修改targetPackage为之前所生产的Package Name
  10. <instrumentation
  11. android:name="android.test.InstrumentationTestRunner"
  12. android:targetPackage="com.youdao.dict"/>
  13. <application
  14. android:icon="@drawable/ic_launcher"
  15. android:label="@string/app_name">
  16. <uses-libraryandroid:name="android.test.runner"/>
  17. </application>
  18. </manifest>

四、修改测试框架:

测试框架 Robotium Wiki已经提供:

//TARGET_PACKAGE_ID 和 LAUNCHER_ACTIVITY_FULL_CLASSNAME 使用工具所生成的

private static final String TARGET_PACKAGE_ID = "com.youdao.dict"

private static final String LAUNCHER_ACTIVITY_FULL_CLASSNAME = "com.youdao.dict.activity.DictSplashActivity"

//测试脚本,我们可以修改脚本,利用java特性,创建多个脚本文件进行调用

public void testCanOpenSettings(){
solo.enterText(0, "test");

}

五、运行脚本进行测试

更多相关文章

  1. Android(安卓)关机实现
  2. android 通过platform.pk8,platform.x509.pem生成jks签名文件
  3. Android(安卓)APK 签名
  4. Activiy或者Fragment 销毁时,Dialog 的正确Dismiss方式和测试方法
  5. Android之apk文件签名——keytool 和 jarsigner
  6. Android(安卓)NDK之 ----- Java 方法映射到C中的签名
  7. Delphi XE5 android 图解为Android应用制作签名
  8. Android自动化测试Espresso+UIAutomator故障总结
  9. RSA算法 Android(安卓)JAVA C#互通

随机推荐

  1. 【幻灯片分享】Android账户同步备份框架
  2. Android 菜鸟认知总结——Android初印象
  3. 【Rayeager PX2】andoid开机logo分析及PX
  4. 利用OpenCV在Android上DIY相机——第二届
  5. 让Android自带的Gallery实现多点缩放,拖动
  6. 别再问我2020年Android前景如何了,我都回
  7. android 可用内存的阀值
  8. 阿里Android开发规范:资源文件命名与使用
  9. android 使用AsyncTask实现异步下载文件
  10. android 触摸(Touch)事件、点击(Click)事