获取控件

getText()

getEditText()

getButton()

getImage()

getImageButton()

getEditText()

getView()

getWebElement()

getWebUrl()

getCurretViews()

 

 

点击操作控件

clickButton()可以通过index或者text识别控件

clickOnView()首先获取控件然后通过clickOnView实现点击控件

clickOnScreen(float x, float y, int numberOfClicks) 点击指定的坐标

clickLongOnScreen(float x, float y, int time)  指定的坐标长按

 

 

滑屏操作

Solo.scrollToSide(KeyEvent.KEYCODE_DPAD_RIGHT);向右滑屏

Drag(float fromx, float toX, float fromy,float toY, int stepCount)拖动,step越少移动越快

 

 

跳转

goBack()

goBackToActivity("Activity名");跳转到指定的Activity

 

 

点击按键

按控件属性右下角的index定位,在遍历整个子对象时通常采用方式,先定位到父对象,再用这种方式取子对象

solo.clickOnButton(0);

如果按键上有文字属性

solo.clickOnButton("查询");

如果按键上的文字是图片展现出来的,系统中只有id属性时需要自行封装方法,solo类没有现成方法通过控件id操作案件,可以用以下方式操作有id的按键

solo.clickOnView(solo.getView("控件的ID"));

 

 

对编辑框进行输入

通过id定位到输入框元素

EditTextedittext=solo.getView(id);

对已定位到的控件输入text

solo.enterText(edittext, text);

获取控件文本属性

toString().trim() 是将获取的名字先转成字符,如果前后有空格,自动去掉空格

solo.getView("id").getClass().toString().trim();

 

 

长按控件

依据控件的text定位,并执行长按操作

solo.clickLongOnText(text);

依据控件中的text定位,且同一界面有多个相同的text时采用以下方式,其中match为int型,代表寻找第几个text

solo.clickLongOnText(text,match);

有时某个空间在当前屏幕找不到,需要滚动屏幕时采用以下方式,其中scroll为boolean型,为True时在找不到控件时会 自动滚动

solo.clickLongOnText(text, match, scroll);

 

 

菜单操作

点击某个菜单

solo.clickOnMenuItem(text);

下拉列表操作(Android称为Spinner控件)

依据text值选择所要的项

solo.isSpinnerTextSelected(text);

 

 

拖动控件

fromX, toX, x轴从某个点拖动到某个点

fromY, toY, Y轴从某个点拖动到某个点

solo.drag(fromX, toX, toY, stepCount);

solo.clickOnScreen(x, y);

solo.scrollDown() 向下拖动屏幕

solo.scrollToBottom() 滚动到屏幕底部

solo.scrollUp() 向上滚动屏幕

solo.scrollToTop() 滚动到屏幕顶部

 

 

断言方法

用于验证当前Activity 名称是否正确

solo.assertCurrentActivity(message, activityClass)

验证内存值的信息

solo.asserMemoryNotLow();

由于测试中引用了junit包,所以同城还可以用junit断言方法,验证语气结果与实际结果是否相符

Assert.assertEquals(expected, actual);

condtion得到是一个Boolean如果condition得到的是True用例通过

Assert.assertTrue(condition);

如果condition得到的是false 用例通过

Assert.assertFalse(condition);

对象非空判断

Assert.assertNotNull(object);

AssertasserNull(object);

对象与对象之间的比对

Assert.assertSame(expected, actual);

robotium从入门到放弃 四 Robotium常用API的更多相关文章

  1. hive从入门到放弃(四)——分区与分桶

    今天讲讲分区表和分桶表,前面的文章还没看的可以点击链接: hive从入门到放弃(一)--初识hive hive从入门到放弃(二)--DDL数据定义 hive从入门到放弃(三)--DML数据操作 分区 ...

  2. javaservlet处理四种常用api请求get,put,post,delete

    一般在网站搭建中servlet只需处理post,get请求便足已.本篇注重使用javaweb编写restful风格api,在servlet中对四种常用请求进行处理. 在api中对于一个请求要做的通常是 ...

  3. Java基础第四天--常用API

    常用API 基本类型包装类概述 将基本数据类型封装成对象的好处可以在对象中定义更多的功能方法操作该数据 常用的操作之一:用于基本数据类型与字符串之间的转换 基本数据类型 包装类 byte Byte s ...

  4. robotium从入门到放弃 三 基于apk的自动化测试

      1.apk重签名   在做基于APK的自动化测试的过程中,需要确保的一点是,被测试的APK必须跟测试项目具有相同的签名,那怎么做才能确保两者拥有相同的签名呢?下面将给出具体的实现方法. 首先将被测 ...

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

    1.导入被测试的源码 我们先下载加你计算器源码,下载地址: https://robotium.googlecode.com/files/AndroidCalculator.zip 如果地址被墙无法现在 ...

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

    1.JDK的安装及环境变量的配置    配置JAVA的运行环境,添加完环境变量后,可以打开Windows命令处理程序窗口,通过执行命令java -version验证环境变量是否添加成功.如果添加成功会 ...

  7. <Jmeter入门不放弃>之<2.常用功能>

    大家这里参考学习的时候,我就不在这里配截图了,因为需要你打开工具根据文档自己去找,才有印象,大家一定要启动JMeter!跟着理解操作 一.测试计划 用来描述一个性能测试,所有内容都是基于这个计划,这谁 ...

  8. MyBatis从入门到放弃四:一对多关联查询

    前言 上篇学习了一对一关联查询,这篇我们学习一对多关联查询.一对多关联查询关键点则依然是配置resultMap,在resultMap中配置collection属性,别忽略了ofType属性. 搭建开发 ...

  9. Linux入门到放弃之三《常用命令(帮助命令,文件压缩和解压,关机、重启,加载光盘...)》

    1.获得命令帮助: man命令的用法: 命令:man find ( 获取find命令的帮助文档 ) 2.复制/root/install.log 到/tmp: ( 确认root目录下是否存在instal ...

随机推荐

  1. Entity Framework 学习初级篇4--Entity SQL

    Entity SQL 是 ADO.NET 实体框架 提供的 SQL 类语言,用于支持 实体数据模型 (EDM).Entity SQL 可用于对象查询和使用 EntityClient 提供程序执行的查询 ...

  2. Sql语句不等于空

    对于这种有null的我一般用这样的句子 isnull(Tag,'') <> '文章' 这样就可以搞定了不管是字符还是数字都可以用 <>

  3. 一个完整的ant build.xml

    <?xml version="1.0" encoding="UTF-8"?> <project name="genwar" ...

  4. conflicting types for xxxx错误 (转)

    pretty_print.c:31: error: conflicting types for ‘vmi_print_hex’ libvmi.h:749: note: previous declara ...

  5. Mac os 10.11 更新ruby

    1.装cocoapods,ruby版本忒低->开始更新ruby->开始更新gem,这是一条不归路啊同志们,各种permission denied,各种路径不存在,各种路径没有读写权限,各种 ...

  6. 转:lr_eval_string,lr_save_string 和 sprintf 的使用

    lr_eval_string,lr_save_string和 sprintf 函数使用介绍 一.lr_eval_string 使用介绍1.函数的主要作用:返回脚本中的一个参数当前的值,返回值类型:ch ...

  7. ural1019 Line Painting

    Line Painting Time limit: 2.0 secondMemory limit: 64 MB The segment of numerical axis from 0 to 109  ...

  8. CSS实现单行、多行文本溢出显示省略号

    单行显示省略号 overflow: hidden; text-overflow:ellipsis; white-space: nowrap;多行显示省略号 display: -webkit-box; ...

  9. [Big Data]Hadoop详解一

    从数据爆炸开始... 一. 第三次工业革命        第一次:18世纪60年代,手工工厂向机器大生产过渡,以蒸汽机的发明和使用为标志.      第二次:19世纪70年代,各种新技术新发明不断被应 ...

  10. Extraordinarily Tired Students UVA - 12108

    不知道叫什么,好像是模拟的方法,看懂了题就好办(英语硬伤←_←) 题意大概是当一个同学想睡觉的时候判断周围睡觉的人数,不睡的人数大于等于睡觉的话就死撑着,否则就睡觉. 一开始没有什么思路,就直接用了个 ...