您的位置:首页 > 编程语言 > Java开发

简单介绍如何使用robotium进行自动化测试

2011-09-01 17:16 996 查看
 

1.      创建一个简单的工程(可参考本人的日志《第一个应用HelloWorld》,需要对该工程稍做修改)作为被测程序,运行后显示如下界面

 



2.      创建一个[b]Test
Project[/b]

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

 



 

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





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





4).     会自动选择和输入Build Target和Properties,可以按照默认的,不用修改。





5).     一个新建的测试工程(HelloWorldTest)就创建好了,如下图:

 



3.      创建一个Test Case

1).     在HelloWorldTest->src->com.liliandroid.helloworld.test上,右击选择New->Class,创建一个Test
Case。

 



2).     在Name中输入Test Case的名字,如:UITextTest。





3).     创建好的Test Case如下图:

 



4.      导入robotium.jar

1).     选择测试工程HelloWorldTest右击,选择Build Path->Configure Build Path…

 



2).     在打开的Properties for HelloWorldTest中点击Add External JARs…按钮。





3).     因为之前创建的工程的SDK是2.2的,所以选择robotium-solo-1.8.0.jar。





4).     点击OK按钮。





5.      修改Test Case

打开UITextTest.java,输入以下内容并保存:

 

packagecom.liliandroid.helloworld.test;
 
importandroid.test.ActivityInstrumentationTestCase2;
 
importcom.liliandroid.helloworld.ActivityMain;
importcom.jayway.android.robotium.solo.Solo;
 
publicclassUITextTestextendsActivityInstrumentationTestCase2<ActivityMain>{
 
      privateSolosolo;
 
      publicUITextTest() {
          super("com.liliandroid.helloworld", ActivityMain.c
b4a4
lass
);
          }
          
      publicvoidsetUp()throwsException {
          solo=newSolo(getInstrumentation(), getActivity());
             }
             
      publicvoidtestUI()throwsException {
          booleanexpected =true;
          booleanactual =solo.searchText("This") &&solo.searchText("is");
           assertEquals("This and/or is are not found", expected, actual);
          
      }
 
   
}

 

注:这个Case是测试运行了ActivityMain后的界面上是否有This和is这两个文字。



 

 

6.      运行测试程序

选择测试工程HelloWorldTest右击,选择Run As->Android

JUnit Test运行测试程序





 

运行完后的测试结果界面(Pass)

 



 

运行完后的测试结果界面(Fail)



 

 

 

注:

1.      被测试的工程和测试的工程可以是不同的SDK,但是不知道有什么影响。

2.      这是在eclipse中进行测试的,也可以在模拟器或者手机上测试。如果需要直接在模拟器或者手机上测试,需要将测试包和被测试包改成相同的签名。(关于apk包的签名和重签名,请参考本人日志《重新签名APK文件》)
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
相关文章推荐