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


    本文转自:http://www.51testing.com/?uid-115892-action-viewspace-itemid-223476

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

     

    2.      创建一个Test Project

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

     

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

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

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

    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).     因为之前创建的工程的SDK2.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.class);

              }

              

          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后的界面上是否有Thisis这两个文字。

     

    6.      运行测试程序

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

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

     

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

     

    注:

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

    2.      这是在eclipse中进行测试的,也可以在模拟器或者手机上测试。如果需要直接在模拟器或者手机上测试,需要将测试包和被测试包改成相同的签名。(关于apk包的签名和重签名,请参考本人日志《重新签名APK文件》)

  • 相关阅读:
    JS 使用 html2canvas 将页面转PDF
    代码记录
    js 原生图片批量上传 multiple="multiple"
    Go中的HTTP debug技能
    位运算 交换2个数 异或运算
    记一次 JMeter 压测 HTTPS 性能问题 拂衣 阿里云云栖号 20220527 19:00 发表于北京
    RVA relative virtual address PE
    进制
    浏览器是不允许页面直接读取本地硬盘资源的
    四平方和定理
  • 原文地址:https://www.cnblogs.com/freeliver54/p/2128515.html
Copyright © 2020-2023  润新知