Robotium学习(一)

来源:互联网 发布:如何优化企业发展环境 编辑:程序博客网 时间:2024/06/09 19:16

换电脑重新开始写一套用例,正好借此机会把robotium的相关知识记录一下。


一   创建一个Test Project

1. 打开eclipse,选择File->New->Project…->Android Test Project,点击Next


如果有源代码则根据下面2-3的步骤

2. Test Project Name中输入测试工程的名称,如:AAATest。选择An existing Android Project,点击右边的Browse…按钮。

3. 选择被测工程,如之前创建的AAA,点击OK按钮。

如果没有原代码,则根据下面的2-3步骤

2. Test Project Name中输入测试工程的名称,如:AAATest。选择This Project,点击右边的Browse…按钮。

3. 无


4. 自动选择和输入Build TargetProperties,可以按照默认的,不用修改,点击finish,至此新的测试工程已经创建成功了


创建一个TestCase

1. 在AAATest->src->com.bbb.aaa.test上,右击选择New->Class,创建一个Test Case,并未testcase命名


三  导入robotium.jar文件

1. 选择测试工程AAATest右击,选择Build Path->Configure Build Path->Java Build Path ->Libraries->Add External JARs

2. 选择robotium.jar文件,我用的是robotium-solo-5.1.jar文件,然后选择OK

修改testcase

package com.remotecontroller.function.test;


//需要导入的包


import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStreamWriter;
import java.util.ArrayList;


import android.app.Activity;
import android.test.ActivityInstrumentationTestCase2;
import android.util.Log;
import android.widget.LinearLayout;
import android.widget.ListView;
import android.widget.RelativeLayout;
import android.widget.TextView;


import com.robotium.solo.*;


//import com.jayway.android.robotium.solo.Solo;


@SuppressWarnings("rawtypes")
public class remoteController extends ActivityInstrumentationTestCase2 {


// 定义变量


private static final String TAG = "TAG";


public Solo solo;
public int timeout = 1800;


public Activity activity;


private static Class<?> launchActivityClass;


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


private static String mainActiviy = "com.xiaomi.mitv.phone.remotecontroller.HomeActivity";


private static String packageName = "com.duokan.phone.remotecontroller";


static {


try {


launchActivityClass = Class.forName(mainActiviy);


} catch (ClassNotFoundException e) {


throw new RuntimeException(e);


}


}


@SuppressWarnings("unchecked")
public remoteController() {


super(packageName, launchActivityClass);


}


@Override
protected void setUp() throws Exception {


super.setUp();


this.activity = this.getActivity();


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


}
@Override
public void tearDown() throws Exception {


try {


this.solo.finishOpenedActivities();


} catch (Throwable e) {


e.printStackTrace();


}


this.activity.finish();


super.tearDown();


}
}

之后就可以增加测试用例了,如果用例增加完了之后,就可以运行测试了

运行测试程序

选择测试工程AAATest右击,选择Run As->AndroidJUnit Test运行测试程序,运行完成后junit里面会显示测试结果


六 记录配置和AndroidManifest.xml


AndroidManifest.xml



0 0