通过参考网上的例子和我师父的帮忙,完成下面的操作。。。虽然网上例子很多,但是自己操作还是有好多问题,一点一点来吧,fighting!!!

一.前提准备

1.robotium-solo-5.3.1.jar

2.下载任何一个apk

3.re-sign.jar 用于重新签名

二.重新签名

    在没有源码,只有apk的情况下,利用re-sign.jar重新签名获得package name和mianActivity,这一步是非常重要的。

1.打开re-sign.jar,出现如图的提示,去环境变量中配置一下

 

2.在环境变量中配置ANDROID_HOME,变量值是android sdk的路径

3.再次打开re-sign.jar,成功

4.将被测试的apk直接拖入上图中,弹出保存页面,直接保存,出现下图显示,记住package name 和main activity

 

三.安装apk

    这里注意的是:安装的apk不是你下载的那个apk,而是刚才我们在上面操作中重新签名后产生的新的apk

将新的apk直接拖入模拟器中安装

四.新建android test project

   new——android test project ,然后选择this project ,点击next,完成

五.建立junit test case

   1.修改AndroidManifest.xml

 

   2.导入jar包

   3.实现代码

package com.raipeng.photograph.test;

import com.robotium.solo.Solo;

import android.app.Activity;
import android.test.ActivityInstrumentationTestCase2;

@SuppressWarnings("rawtypes")
public class Photo extends ActivityInstrumentationTestCase2 {
    public Solo solo;
    public Activity activity;
    private static Class<?>  launchActivityClass;

    //对应re-sign.jar生成出来的信息框里的值

    private static String  mainActiviy      = "com.raipeng.photograph.control.mainfragment.MainActivity";
    

    static {

    try {

    launchActivityClass = Class.forName(mainActiviy);

    } catch (ClassNotFoundException e) {

    throw new RuntimeException(e);

    }

    }
    @SuppressWarnings("unchecked")
    public Photo() {
        super(launchActivityClass);
    }

    

    

    @Override

    protected void  setUp() throws Exception {

    //super.setUp();

    this.activity = this.getActivity();

    solo = new Solo(getInstrumentation(), getActivity());

    }
    
    public void testLogin(){
        solo.unlockScreen();
        solo.sleep(5000);
        solo.clickOnText("婚纱");
        }
    
    
    public void tearDown() throws Exception {

        try {

        this.solo.finishOpenedActivities();

        } catch (Throwable e) {

        e.printStackTrace();

        }

        this.activity.finish();

        super.tearDown();

        }

        

    


}
View Code

  4.运行时如果老是报错:class not found:com.robotium.solo.Solo

  1.build path——order and export中勾选robotium-solo-5.3.1.jar

  2.在菜单栏project中点击clean,ok