博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
简单介绍如何使用robotium进行自动化测试
阅读量:4049 次
发布时间:2019-05-25

本文共 1755 字,大约阅读时间需要 5 分钟。

1.      创建一个简单的工程()作为被测程序,运行后显示如下界面

 

2.      创建一个 Project

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

 

 

2).     Test Project Name中输入工程的名称,如:HelloWorldTest。选择An existing 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,输入以下内容并保存:

 

package com.liliandroid.helloworld.test;

 

import android.test.ActivityInstrumentationTestCase2;

 

//此处导入的是被测试工程的activity

import com.liliandroid.helloworld.ActivityMain;

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

 

publicclass UITextTestextends ActivityInstrumentationTestCase2<ActivityMain>{

     //ActivityMain 为测试APK的启动activity

      private Solo solo;

      publicUITextTest() {

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

          }

      publicvoid setUp()throws Exception {

          super.setUp() ;

          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 Test运行测试程序

 

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

 

 

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

 

 

 

注:

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

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

转载地址:http://wkjci.baihongyu.com/

你可能感兴趣的文章
司法如何运用电子智能化加快现代化建设
查看>>
iSecret&nbsp;1.1&nbsp;正在审核中
查看>>
IOS开发的开源库
查看>>
IOS开发的开源库
查看>>
Jenkins - sonarqube 代码审查
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成(一)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 单机部署(二)
查看>>
Jenkins + Docker + SpringCloud 微服务持续集成 - 高可用集群部署(三)
查看>>
Golang struct 指针引用用法(声明入门篇)
查看>>
Linux 粘滞位 suid sgid
查看>>
C#控件集DotNetBar安装及破解
查看>>
Winform皮肤控件IrisSkin4.dll使用
查看>>
Winform多线程
查看>>
C# 托管与非托管
查看>>
Node.js中的事件驱动编程详解
查看>>
mongodb 命令
查看>>
MongoDB基本使用
查看>>
mongodb管理与安全认证
查看>>
nodejs内存控制
查看>>
nodejs Stream使用中的陷阱
查看>>