码迷,mamicode.com
首页 > 其他好文 > 详细

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

时间:2016-05-08 23:49:08      阅读:387      评论:0      收藏:0      [点我收藏+]

标签:

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

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

标签:

原文地址:http://www.cnblogs.com/sundalian/p/5471933.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!