最受欢迎的Android UI测试工具—Robotium入门

发表于:2017-3-31 09:09

字体: | 上一篇 | 下一篇 | 我要投稿

 作者:Anitha Eswari    来源:51Testing软件测试网原创

  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:
  1import com.sasi.attendanceproject.Home;
  #3:新建的类将继承ActivityInstrumentationTestCase2类的属性
  1public class AttendanceTest extends
  2ActivityInstrumentationTestCase2 <home>
  (注:这里,Home是要在android应用程序中测试的activity)
  #4:Solo类创建实例如下:
  1private Solo solo;
  #5:为类创建一个Constructor,如下
  1public AttendanceTest() {
  2   super(Home.class);
  3   // TODO Auto-generated constructor stub
  #6:创建setUp和tearDown方法,如下所示:
  Setup方法用于启动Instrumentation
  1public void setUp()throws Exception
  2{
  3  solo=new Solo(getInstrumentation(), getActivity());
  4}
  测试完成后,使用Teardown方法来关闭activity。
  1public 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);
版权声明:51Testing软件测试网(www.51testing.com)原创出品,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明,否则将追究法律责任。
21/212>
《2023软件测试行业现状调查报告》独家发布~

关注51Testing

联系我们

快捷面板 站点地图 联系我们 广告服务 关于我们 站长统计 发展历程

法律顾问:上海兰迪律师事务所 项棋律师
版权所有 上海博为峰软件技术股份有限公司 Copyright©51testing.com 2003-2024
投诉及意见反馈:webmaster@51testing.com; 业务联系:service@51testing.com 021-64471599-8017

沪ICP备05003035号

沪公网安备 31010102002173号