51Testing软件测试论坛

标题: 简单介绍如何使用robotium进行自动化测试 [打印本页]

作者: My_JIE    时间: 2018-4-26 16:34
标题: 简单介绍如何使用robotium进行自动化测试
1.      创建一个简单的工程(可参考本人的日志《第一个应用HelloWorld》,需要对该工程稍做修改)作为被测程序,运行后显示如下界面:

[attach]114596[/attach]


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

[attach]114597[/attach]




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


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

[attach]114599[/attach]

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


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

[attach]114601[/attach]


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

[attach]114602[/attach]


2).     在Name中输入Test Case的名字,如:UITextTest。
[attach]114603[/attach]


3).     创建好的Test Case如下图:
[attach]114604[/attach]



4.      导入robotium.jar
1).     选择测试工程HelloWorldTest右击,选择Build Path->Configure Build Path…

[attach]114605[/attach]


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

[attach]114606[/attach]

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

[attach]114607[/attach]

4).     点击OK按钮。

[attach]114608[/attach]

5.      修改Test Case
打开UITextTest.java,输入以下内容并保存:



  1. packagecom.liliandroid.helloworld.test;



  2. importandroid.test.ActivityInstrumentationTestCase2;



  3. importcom.liliandroid.helloworld.ActivityMain;

  4. importcom.jayway.android.robotium.solo.Solo;



  5. publicclassUITextTestextendsActivityInstrumentationTestCase2<ActivityMain>{



  6.       privateSolosolo;



  7.       publicUITextTest() {

  8.           super("com.liliandroid.helloworld", ActivityMain.class);

  9.           }

  10.          

  11.       publicvoidsetUp()throwsException {

  12.           solo=newSolo(getInstrumentation(), getActivity());

  13.              }

  14.             

  15.       publicvoidtestUI()throwsException {

  16.           booleanexpected =true;

  17.           booleanactual =solo.searchText("This") &&solo.searchText("is");

  18.            assertEquals("This and/or is are not found", expected, actual);

  19.          

  20.       }



  21.    

  22. }
复制代码



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


[attach]114608[/attach]




6.      运行测试程序
选择测试工程HelloWorldTest右击,选择Run As->Android JUnit Test运行测试程序

[attach]114609[/attach]





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



[attach]114611[/attach]



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




[attach]114612[/attach]









欢迎光临 51Testing软件测试论坛 (http://bbs.51testing.com/) Powered by Discuz! X3.2