robotium从入门到放弃 二 第一个实例

1.导入被测试的源码

我们先下载加你计算器源码,下载地址:

https://robotium.googlecode.com/files/AndroidCalculator.zip

如果地址被墙无法现在下面网盘地址也可以下载:

链接: http://pan.baidu.com/s/1c2e8McC 密码: vsj8

 

打开eclipse,点击File-Import

选择Existing Projects into Workspace,点击Next

 

选择Select archive file,选择下载下来的源码压缩包,点击Finish。

 

导入的项目如果有红色的错误提醒,可以点击项目然后鼠标右键选择属性,然后选中Android选项,然后在右侧窗口选中一个Project Build Target即可

 

2.新建测试工程

File-New-Android-Android Test Project

 

在Project Name输入工程名:AndroidCalculatorTest,点击Next

在新出现的窗口中选择刚才导入的计算机源码,点击Finish,即可新建一个测试工程

 

3.添加Robotium jar

如下地址下载最新的Robotium jar的包

http://dl.bintray.com/robotium/generic/

在之前建好的测试项目下,新建libs文件夹,将下载下来的jar文件放到该文件夹下。鼠标右键该jar选择Build Path,然后选择Add To Build Path

 

4.新建一个自动化测试类

新建一个Java类,继承ActivityInstrumentationTestCase2<Main>

代码如下:

package com.calculator.test;

import android.test.ActivityInstrumentationTestCase2;

import android.widget.EditText;

import android.widget.TextView;

import com.calculator.Main;

import com.robotium.solo.Solo;

import com.calculator.R;

@SuppressWarnings("rawtypes")

public class MainTest extends ActivityInstrumentationTestCase2 {

    private Solo solo;

    @SuppressWarnings("unchecked")

    public MainTest() {

        super(Main.class);

        // TODO Auto-generated constructor stub

        }

        @Override

        protected void setUp() throws Exception {

            super.setUp();

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

        }

        public void testDisplayWhiteBox() {

            float vFirstNumber = 10;

            float vSecondNumber = 10;

            float vResult = vFirstNumber * vSecondNumber;

            EditText vFirstEditText = (EditText) solo.getView(R.id.EditText01);

            solo.clearEditText(vFirstEditText);

            solo.enterText(vFirstEditText, String.valueOf(vFirstNumber));

            // AccessSecondvalue(edit-filed)andputtingSecondNumbervalueinit

            EditText vSecondEditText = (EditText) solo.getView(R.id.EditText02);

            solo.clearEditText(vSecondEditText);

            solo.enterText(vSecondEditText, String.valueOf(vSecondNumber));

            // ClickonMultiplybutton

            solo.clickOnButton("Multiply");

            assertTrue(solo.searchText(String.valueOf(vResult)));

            TextView outputField = (TextView) solo.getView(R.id.TextView01);

            // Assert to verify result with visible value

            assertEquals(String.valueOf(vResult), outputField.getText().toString());

        }

        @Override

        protected void  tearDown() throws Exception {

            solo.finishOpenedActivities();

        }

}

 

5.运行robotium测试用例

确保设备已成功连接到电脑,可在Windows命令行下,通过adb devices查看设备有没有成功连接,同时确保设备处于唤醒、解锁状态下,当然也可选择在模拟器中运行。然后在测试类中右击鼠标,选择Run As -> Android JUnit Test

 

观察手机或者模拟器,会自动化启动计算器APP,然后自动填充在测试类中写的两个数值,然后点击计算按钮,最后匹配结果是否与预期一致。如果与预期相符,会有绿色的进度条表示用例执行通过,反之会显示红色的条幅。

就这样成功的运行了第一个robotium的自动化用例。

模拟器推荐使用Genymotion,直接下载 .exe,双击安装。

官网地址:https://www.genymotion.com/download/

下载地址:链接: http://pan.baidu.com/s/1nv3YXZz 密码: 3u93

时间: 2025-01-02 05:34:54

robotium从入门到放弃 二 第一个实例的相关文章

robotium从入门到放弃 一 测试开发环境搭建

1.JDK的安装及环境变量的配置    配置JAVA的运行环境,添加完环境变量后,可以打开Windows命令处理程序窗口,通过执行命令java -version验证环境变量是否添加成功.如果添加成功会显示出安装的Java版本 如下图所示   2.Android SDK安装及环境变量配置,及ide的选择     下载地址:链接: http://pan.baidu.com/s/1pLrd6Sb 密码: kfj5     下载集成环境adt-bundle-windows-x86_64,里面包含ecli

robotium从入门到放弃 四 Robotium常用API

  获取控件 getText() getEditText() getButton() getImage() getImageButton() getEditText() getView() getWebElement() getWebUrl() getCurretViews()     点击操作控件 clickButton()可以通过index或者text识别控件 clickOnView()首先获取控件然后通过clickOnView实现点击控件 clickOnScreen(float x, fl

从入门到放弃,.net构建博客系统(二):依赖注入

文章目录:<从入门到放弃,.net构建博客系统> 从入门到放弃,.net构建博客系统(一):系统构建 从入门到放弃,.net构建博客系统(二):依赖注入 上一篇中有讲到项目启动时会进行ioc的依赖注入,但具体是怎么注入的呢?我们先一步步往下走 一.注册autofac配置 首先bootstraper会进行初始化,接着将当前mvc控制器工厂改为AutofacControllerFactory. 1 public class AutofacConfig 2 { 3 /// <summary&g

OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据

OkHttp框架从入门到放弃,解析图片使用Picasso裁剪,二次封装OkHttpUtils,Post提交表单数据 我们这片博文就来聊聊这个反响很不错的OkHttp了,标题是我恶搞的,本篇将着重详细的分析,探索OkHttp这个框架的使用和封装 一.追其原理 Android系统提供了两种HTTP通信类 HttpURLConnection HttpClient Google推荐使用HttpURLConnection,这个没必要多说,事实上,我这篇写的应该算是比较晚了,很多优秀的博文都已经提出了这些观

webpack -&gt; vue Component 从入门到放弃(二)

Foreword 上一篇简单介绍了webpack的打包功能,应该说是比较无意义的打包,对于开发人员来说,这种效率是非常低的.所以我们来点升华. First Step 我们给第一篇例子中加个样式文件我们 style.css body { background: yellow; } 然后修改 entry.js require("!style-loader!css-loader!./style.css") // 载入 style.css document.getElementById('ap

python从入门到放弃(二)

编码类型 ASCII码:主要用来显示英文和其他西欧语言,用8位来表示,也就是一个字节,最多只能显示256个符号 UNICODE:也叫万国码,为了解决传统的字符编码方案的局限而产生的,它为每种语言的每个字符都设定了二进制编码,最少用16位来表示,也就是两个字节 UTF-8:是unicode的压缩版,可以显示中文,占用的内存少 python2.x版本使用的是ascii码 python3.x版本使用的是utf-8 python2中无法显示中文,想要显示中文的必须在代码首部加一条代码: # -*- co

一个Flash开发者从入门到放弃的成长之路

本文将按照入门.成长.转行三个关键词来讲述作者这些年使用Flash进行项目开发的整个历史过程. 一.入门--开始走上Flash的道路. 和Flash的机缘要从大学时代说起.2005年下半年,学校开设了网页三剑客,就是DreamWeaver.Fireworks.Flash三个软件.在那个课程之前,各种课程都是偏理论的课程,比如C.数据库原理.线性代数,这些课程学着都比较枯燥,而这个网页三剑客课程这是实践性非常强,可以做网站.动画之类的.我对这些自然也有很大的兴趣,那时候自己刚刚买了电脑,课间之余,

iOS 即时通讯,从入门到 “放弃”?

原文链接:http://www.jianshu.com/p/2dbb360886a8 本文会用实例的方式,将 iOS 各种 IM 的方案都简单的实现一遍.并且提供一些选型.实现细节以及优化的建议. —— 由宇朋Look分享 前言 本文会用实例的方式,将iOS各种IM的方案都简单的实现一遍.并且提供一些选型.实现细节以及优化的建议. 注:文中的所有的代码示例,在github中都有demo:iOS即时通讯,从入门到“放弃”?(demo)可以打开项目先预览效果,对照着进行阅读. 言归正传,首先我们来总

NDK开发 从入门到放弃(七:Android Studio 2.2 CMAKE 高效NDK开发)

前言 之前,每次需要边写C++代码的时候,我的内心都是拒绝的. 1. 它没有代码提示!!!这意味着我们必须自己手动敲出所有的代码,对于一个新手来说,要一个字母都不错且大小写也要正确,甚至要记得住所有的jni函数等,真是太折磨人了-平时写java代码的时候都是写几个字母会出来一大堆提示然后选择的,这样还有一个好处就是很多时候我们不知道有那些函数,但是我们可以通过obj.,然后就可以看到它有哪些方法函数了. 2. 很多地方会显示为红色,就像是错误提示的那种,当然,如果没错的话还是能编译运行的,但是如