Robotium环境搭建与新手入门教程

  • 准备工具:Robotium资料下载

  • 知识准备:

  1. java基础知识,如基本的数据结构、语法结构、类、继承等
  2. 对Android系统较为熟悉,了解四大组件,会编写简单的Android应用程序
  3. 熟悉Eclipse IDE使用方法
  4. 有足够的耐心与探索精神,遇到问题可以熟练的Google
  • 环境搭建

  1. 安装jdk,配置环境变量,如果不会请自行Google
  2. 下载安装Android SDK,并更新
  3. 下载Eclipse,并安装ADT插件,集成Android SDK
  • Robotium新手入门

  1. 下载Robotium官方例子以及最新的JAR包
  2. 打开Eclipse导入被测试工程

    点击查看大图

  3. 创建测试工程:选择Android Test Project,并点击下一步

    点击查看大图

  4. 输入工程名,并点击下一步

    点击查看大图

  5. 选择被测工程NotePad,并点击完成

    点击查看大图

  6. 在测试工程中新建lib文件夹

    点击查看大图

  7. 将下载好的Robotium jar包拷入lib中,并在build path中将jar包引入工程

    点击查看大图

  8. 打开测试工程中的manifest.xml文件,修改如下

    点击查看大图

  1. 新建junit test case,选择junit4,并输入类名,点击完成

    点击查看大图

  2. 打开新建的测试类,修改继承ActivityInstrumentationTestCase2<NotesList>,创建构造方法,并编写测试代码,具体如图

    点击查看大图

01 package com.example.android.notepad.test;
02  
03 import android.test.ActivityInstrumentationTestCase2;
04  
05 import com.example.android.notepad.NotesList;
06 import com.jayway.android.robotium.solo.Solo;
07  
08 public class NotePadTest extendsActivityInstrumentationTestCase2
09 {
10     private Solo solo;//声明Solo
11     public NotePadTest()//构造方法
12     {
13         super(NotesList.class);
14  
15     }
16  
17     @Override
18     public void setUp() throws Exception
19     {
20         solo = new Solo(getInstrumentation(), getActivity());
21     }
22  
23     @Override
24     public void tearDown() throws Exception
25     {
26         solo.finishOpenedActivities();
27     }
28  
29     public void testAddNote() throws Exception
30     {
31         //点击add note按钮
32         solo.clickOnMenuItem("Add note");
33         //比对结果
34         solo.assertCurrentActivity("Expected NoteEditor activity""NoteEditor");
35         //在第一个TextEdit控件上输入内容
36         solo.enterText(0"Note 1");
37         //返回上个界面
38         solo.goBack();
39         //点击菜单中的Add note
40         solo.clickOnMenuItem("Add note");
41         //在第一个EditText中输入内容
42         solo.enterText(0"Note 2");
43         //返回NotesList activity
44         solo.goBackToActivity("NotesList");
45         //截屏
46         solo.takeScreenshot();
47         boolean expected = true;
48         boolean actual = solo.searchText("Note 1") ; solo.searchText("Note 2");
49         assertEquals("Note 1 and/or Note 2 are not found", expected, actual);
50  
51     }
52  
53 }

  1. 编写完成后,打开模拟器或者连接上真机,右击测试类,选择Android junit Test

    点击查看大图

  2. Eclipse会切换到junit界面,此时模拟器(真机)会自动执行测试,通过左边界面可以看到运行结果

    点击查看大图

  3. 一个简单的测试就结束了。如果你没有遇到问题,那么恭喜你继续更深一步学习,如果你遇到问题了,不要急~请先确保你的操作过程没有出任何错误,其次我列出你可能遇到的错误,如果还是没有解决请Google或者联系我们

1、最常见的:java.lang.NoClassDefFoundError: com.jayway.android.robotium.solo.Solo

解决方法:如图操作后再clean工程

转载于:https://www.cnblogs.com/AmilyWilly/p/4661393.html

安卓自动化测试(2)Robotium环境搭建与新手入门教程相关推荐

  1. ESP-01S开发环境搭建及新手教程点灯教程全解详细配图(ESP8266-01s)

    ESP-01S开发环境搭建及新手教程点灯教程全解相当详细(ESP8266-01s) 一.模组简介 二.开发工具 三.开发软件 四.点亮第一盏灯 五.至此完成了ESP-01S在arduino开发环境下点 ...

  2. STM32入门笔记(02):MDK Keil5 开发环境搭建及新建工程模板教程(SPL库函数版)

    目录 Keil5 开发环境搭建 芯片数据手册 Mec 多功能智能小车底盘开发与使用手册 Mec 主控原理图 Mec STM32F103VET6集成主控板资源分配 Mec OLED 显示内容 如何给 S ...

  3. JEECG_3.7开发环境搭建与代码生成器入门级教程-张代浩-专题视频课程

    JEECG_3.7开发环境搭建与代码生成器入门级教程-3088人已学习 课程介绍         针对入门级同学,清晰讲解JEECG开发平台本地环境搭建步骤,针对jeecg的代码生成器做专题使用讲解, ...

  4. win2012 r2 iis php,Win2012 R2 IIS8.5+PHP(FastCGI)+MySQL运行环境搭建wordpress博客教程

    运行环境搭建教程 一.环境说明: 操作系统:Windows Server2012 R2 PHP版本:php 5.5.8 MySQL版本:MySQL5.6.15 二.相关软件下载: 1.PHP下载地址: ...

  5. Charles网络抓包新手入门教程-(二)软件配置与环境安装(ios14-IOS系统安装配置)

    目录 一.环境配置 二.开启电脑代理设置 三.给IPhone手机设置代理服务器 四.Iphone手机下载并信任证书 五.Charles抓取手机数据包 六.总结 一.环境配置 1.Win10系统 2.C ...

  6. 【LaTeX】E喵的LaTeX新手入门教程(4)图表

    这里说的不是用LaTeX画图,而是插入已经画好的图片..想看画图可以把滚动条拉到底.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇  [LaTeX]E喵的LaTeX新手入门教程(2)基 ...

  7. 想学python都要下载什么软件-学编程闲余时间建议下载的软件_Python新手入门教程...

    原标题:学编程闲余时间建议下载的软件_Python新手入门教程 Python新手入门教程_在手机上就能学习编程的软件 很多小伙伴会问:我在学编程,想利用坐地铁坐公交吃饭间隙学编程,在手机上能学编程的软 ...

  8. 【LaTeX】E喵的LaTeX新手入门教程(3)数学公式

    昨天熄灯了真是坑爹.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇  [LaTeX]E喵的LaTeX新手入门教程(2)基础排版上一期测试答案1.大家一开始想到的肯定是\LaTeX{}e ...

  9. 【LaTeX】E喵的LaTeX新手入门教程(2)基础排版

    换了块硬盘折腾了好久..联想的驱动真坑爹.前情回顾[LaTeX]E喵的LaTeX新手入门教程(1)准备篇文档框架嗯昨天我们已经编写了一个最基本的文档,其内容是这样的:\documentclass{ar ...

  10. 【我的Latex学习之路】转载自:E喵的LaTeX新手入门教程(1)准备篇

    E喵的LaTeX新手入门教程(1)准备篇 **声明:**本篇博客转载自E喵的LaTeX新手入门教程,具体的出处我也找不到了,网络上好多好多,觉得他写的不错,于是就作为自己入门的教程,摘抄至此,重新排版 ...

最新文章

  1. java列表包含列表_java – 包含另一个列表的列表
  2. php下正则替换多个br /
  3. 机器人能翻转汉堡肉饼 短暂上岗后将“休息”四天
  4. const类型限定符
  5. windows7计算机管理,windows7计算机管理
  6. 存储过程可重用的代码块_利用软件重用经验进行自动化测试推荐
  7. Python中无法使用“~”获取Ubuntu系统的用户目录
  8. Web API-本地存储
  9. LeetCode每日一题——无重复字符的最长子串
  10. 方正电脑如何关闭网络启动计算机,方正电脑怎么进安全模式
  11. HCNP数通认证考试心得体会
  12. 模糊局部信息c均值聚类算法(flicm)
  13. 五金行业智慧采购解决方案:应用集中采购协同管理系统激活企业数字化采购价值
  14. css实现六边形图片(最简单易懂方法实现高逼格图片展示)
  15. 计算机生命科学研究系,生命科学与计算机科学的结合发展研究
  16. 区块链相关数据报表_区块链行业数据统计
  17. Java JDK安装及环境变量配置(windows)
  18. 计算总成绩和平均成绩
  19. C#实现土豆优酷等网站视频的缩略图
  20. 单片机 脉搏心率检测 MSP430G2553 Pulse Sensor 红外对射

热门文章

  1. 【软件使用技巧】二(Word文档损坏)
  2. Python利用SMTP发邮件
  3. 【机器学习、神经网络】拟合非线性函数y = x**2 - 2(部分问题未解决)
  4. 【Tensorflow】【损失函数】交叉熵数据验证(下)---BinaryCrossentropy二分类
  5. Pytorch——常用的神经网络层、激活函数
  6. knn——model celectionpreprocessing
  7. word字间距异常处理方式
  8. 在PyCharm切换Python2和Python3
  9. Android头部悬浮ListView第二种实现方式
  10. 同事:你居然还在用 try catch 处理异常? 有点Low啊