专栏名称: 51Testing软件测试网
51Testing软件测试网,人气最旺的软件测试技术门户,提供软件测试社区交流,软件测试博客,人才服务,测试沙龙,测试杂志,测试资料下载等全方位信息服务,是国内最专业的软件测试就业培训、企业服务供应商...
目录
相关文章推荐
51好读  ›  专栏  ›  51Testing软件测试网

最受欢迎的Android UI测试工具-Robotium使用教程

51Testing软件测试网  · 公众号  · 测试  · 2017-03-31 17:30

正文


  Robotium是用于测试本地型和混合型Android应用程序的自动化测试框架。它提供了简单的API来编写UI自动化脚本。有各种的工具可用于测试Android应用程序,Robotium则是最常用的一种。

  Robotium可用于功能编写,系统验收测试和用户验收测试。Robotium Testcases可以在Android模拟器以及Android的真实设备中执行。

  这篇Robotium教程包含哪些内容:

  • 优点

  • 准备条件

  • 创建Robotium项目

  • 创建Robotium类

  • 一些Robotium方法

  • 在Android应用程序中查找元素

  • 示例代码

  • 执行Robotium项目

  Robotium的优点:

  1、易编写

  2、API简单(所有方法仅在Solo Class中可用)

  3、自动Delays & Timings

  4、当从一个activity到另一个时,不需要编写代码

  5、测试Android本机应用程序以及混合应用程序。

  6、能够处理多个Android activity。

  7、编写测试所需时间较少,因为API很简单。

  8、由于运行时绑定到UI组件,测试用例是可靠的

  9、执行测试用例效率高

  10、便于Maven和ANT

  先决条件

  1) 下载安装JAVA

  -将Java库添加到PATH中,并在环境中将JAVA_HOME设置为java安装目录的根目录

  2) 下载ADT Bundle

  -提取ADT Bundle,并将其放入一个文件夹中

  -在环境中将ANDROID_HOME设置为ADT bundle文件夹的根目录。

  创建Robotium项目

  只需很少几个步骤就可以创建一个项目

  Step #1:打开eclipse,其中包含所需测试的android应用软件

  Step #2:右键单击Android项目 - > Android工具,然后单击新的测试项目。

  Step #3:为测试项目命名,然后单击下一步按钮。

  Step #4:选择被测试应用程序作为目标,然后单击完成按钮

  Step #5:在eclipse工作区中创建测试项目。

  Step #6:下载Robotium solo jar

  Step #7:右键单击工作区中的测试项目,创建路径并且点击Configure创建路径

  Step #8:切换到库选项卡,单击"添加外部jar"选项,浏览下载Robotium jar文件并将其添加到库中,然后单击"确定"。

  创建Robotium类

  #1:右键单击测试项目中src目录下的package,然后创建一个新类。

  #2:导入Main Activity类的Robotium测试项目。

  Syntax:

  1 import com.sasi.attendanceproject.Home;

  #3:新建的类将继承ActivityInstrumentationTestCase2类的属性

  1  public class AttendanceTest extends

  2  ActivityInstrumentationTestCase2

  (注:这里,Home是要在android应用程序中测试的activity)

  #4:Solo类创建实例如下:

  1  private Solo solo;

  #5:为类创建一个Constructor,如下

  1   public AttendanceTest() {

  2   super(Home.class);

  3   // TODO Auto-generated constructor stub

  #6:创建setUp和tearDown方法,如下所示:

  Setup方法用于启动Instrumentation

  1 public void setUp()throws Exception

  2 {

  3  solo=new Solo(getInstrumentation(), getActivity());

  4 }

  测试完成后,使用Teardown方法来关闭activity。

  1 public void tearDown() throws Exception

  2 { solo.finishOpenedActivities();

  3 }

  一些Robotium方法

  #1 assertCurrentActivity(text,Activity)

  此方法用于验证当前activity是否用于发送参数传递。

  Syntax

  1solo.assertCurrentActivity("Current Activity", Home.class);

  #2 clickOnButton(text)

  此方法用于单击具有指定文本的按钮。

  Syntax:

  1solo.clickOnButton("ADMIN");

  #3. clickOnButton(int)

  此方法用于单击具有指定索引的按钮。

  Syntax:

  1solo.clickOnButton(2);

  #4.waitForText(text)

  此方法用于wait直到文本出现在activity中。

  Syntax:

  1solo.waitForText("Creating New Password");

  #5 enterText(int, text)

  此方法用于输入作为第二个参数传递给指定的索引编辑框文本。

  Syntax:

  1solo.enterText(0,"test");

  #6. clickOnCheckbox(int)

  此方法将单击具有给定索引的复选框

  Syntax:

  1solo.clickOnCheckBox(0);

  #7 clickOnRadioButton(int)

  此方法用于单击具有给定索引的复选框。

  Syntax:

  1solo.clickOnRadioButton(1);

  #8 clickOnImage(int)

  此方法用于单击具有给定索引的图像

  Syntax:

  1solo.clickOnImage(1);

  #9 clearEditText(int)

  此方法用于使用给定的索引清除编辑框中的文本。

  Syntax:

  1solo.clearEditText(0);

  示例程序

  在Android应用程序中查找元素

  步骤-1:打开包含需测试Android应用程序的Eclipse。

  步骤-2:展开项目,转到Layout文件夹并双击activity XML文件。它将在eclipse编辑器上打开设计的activity。

  步骤-3:定位按钮元素

  通过ID查找元素

  单击你要查找的元素。在右侧的属性面板中,可以找到该元素的ID。

  在上图中,元素的ID是btnadmin。

  定位这个按钮的相应Robotium代码是:

  1solo.clickOnButton(R.id.btnadmin);

  通过位置定位元素:

  如果ID不可用,那么你可以使用order找到元素。如果按钮处于第二位置,则你可以通过这样定位button:

  1solo.clickOnButton(1);

......

 
推荐阅读

点击阅读☞软件测试使用测试文档

点击阅读☞为什么要先从测试用例编写和文档编写开始?

点击阅读☞需求评审前的测试准备流程规范

点击阅读☞软件测试的修行之道

点击阅读☞敏捷脑图测试用例实践之路


填问卷送视频,福利倒计时!

点击左下角“阅读原文”查看全文内容!

推荐文章
经典微小说  ·  找个有脑子的男人多重要!
7 年前
文玩汇  ·  这五首歌,唱出了文玩之路
7 年前