首页 > 代码库 > Robotium API -- 除click/clickLong外的其他操作

Robotium API -- 除click/clickLong外的其他操作

拖动操作

void drag (float fromX, float toX, float fromY, float toY, int stepCount)

选定两个位置,进行拖动操作(这里的拖动操作只会记录你的起点和终点,而不会理会你的运动路径)

参数:

fromX-起始位置的X坐标

toX-终点的X坐标

 

fromY-起始位置的Y坐标

toY-终点的Y坐标

stepCount-分几步完成

返回:

 

void goBack()

相当于按下系统返回键

参数:

返回:

 

void hideSoftKeyboard()

隐藏键盘,在软键盘弹出来的时候使用

参数:

返回:

 

void sendKey(int key)

向应用发送键盘的key值,用于模拟键盘操作。

注:不要向非测试界面发送sendKey,会报错

参数:

key-键盘的Key值,如UP,DOWN,ENTER,MENU等

返回:

 

void sleep(int time)

让测试停止若干时间以便进行下一步操作

参数:

time-停止的时间,单位是毫秒,如sleep(2000),是停止了2秒钟

返回:

 

void pressMenuItem (int index [, int itemPerRow])

通过菜单的索引按下菜单中制定的item

参数:

index-该item的索引值

itemPerRow-每行有多少个item

返回:

 

void pressSpinnerItem (int spinnerIndex, int itemIndex)

点击下拉式菜单栏的item

参数:

spinnerIndex-下拉式菜单栏的索引值

itemIndex-要点击的item的索引值,负数表示需要向上滚动才能找到的item,正数表示向下滚动可以找到的item

返回:

 

滚动操作

boolean scrollDown ()

滚动条进行向下操作

参数:

返回:

true-如果可以进行滚动的话

false-如果已经滚动到底部,无法滚动

 

 

boolean scrollUp ()

滚动条进行向上操作

参数:

返回:

true-如果可以进行滚动的话

false-如果已经滚动到顶部,无法滚动

 

 

boolean scrollUpList (android.widget.AbsListView list | int index)

操作一个list向上滚动

参数:

list-被操作的滚动条名称

index-被操作的滚动条索引,如果是0,表示只有一个可以滚动的list

返回:

 

true-如果可以进行滚动的话

false-如果已经滚动到顶部,无法滚动

 

boolean scrollListToBottom (android.widget.AbsListView list | int index)

操作一个list向下滚动一直滚动到底部

 

参数:

list-被操作的滚动条名称

index-被操作的滚动条索引,如果是0,表示只有一个可以滚动的list

返回:

true-如果可以进行滚动的话

false-如果已经滚动到底部,无法滚动

 

 

boolean scrollListToTop (android.widget.AbsListView list | int index) 

操作一个list向上滚动一直滚动到顶部

参数:

list-被操作的滚动条名称

index-被操作的滚动条索引,如果是0,表示只有一个可以滚动的list

返回:

true-如果可以进行滚动的话

false-如果已经滚动到顶部,无法滚动

 

void scrollToBottom ()

向下滚动屏幕,一直滚动到底部

参数:

返回:

 

 

void scrollToTop ()

向上滚动屏幕,一直滚动到顶部

参数:

返回:


void scrollListToLine (android.widget.AbsListView list | int index , int line)

操作滚动条滚动到list的某一行

参数:

 

参数:

list-被操作的滚动条名称

index-被操作的滚动条索引

line-滚动到第几行

返回:

 

水平滚动

void scrollToSide (int side [, float scrollPosition])

水平滚动屏幕,可限制操作滚动的位置

参数:

side-水平滚动的方向,LEFT或者RIGHT

scrollPosition-滚动屏幕的比例,从0到1,如果是0.5,则只会对一半的屏幕进行滚动

返回:

 

scrollViewToSide (android.view.View.view view, int side [, float scrollPosition])

水平滚动某一个view,可限制操作滚动的位置

参数:

 

view-滚动的view名称

side-水平滚动的方向,LEFT或者RIGHT

scrollPosition-滚动屏幕的比例,从0到1,如果是0.5,则只会对一半的屏幕进行滚动

返回:

 

其余特定控件操作

 

屏幕方向

void setActivityOrientation (int orientation)

设置屏幕方向,即横屏还是竖屏

参数:

orientation-设置方向,LANDSCAPE表示横屏,PORTRAIT表示竖屏

返回:

 

datePicker控件

void setDatePicker (android.widget.datePicker datePicker | int index, int year, int monthOfYear, int dayOfMonth)

给datePicker控件设置日期

参数:

datePicker-操作的datePicker的名称

index-操作的datePicker的索引值

year-设置年的值,如2013

monthOfYear-设置月份的值

dayOfMonth-设置日的值

返回:

 

 

timePicker控件

void setTimePicker (android.widget.timePicker timePicker | int index, int hour, int minute)

给timePicker控件设置时间

参数:

timePicker-操作的timePicker的名称

index-操作的timePicker的索引值

hour-设置小时的值

minute-设置分钟的值

返回:

 

progressBar控件

void setProgressBar (android.widget.ProgressBar progressBar | int index, int progress)

设置进度条的进度

参数:

progressBar-操作的进度条控件的名称

index-操作的进度条控件的索引值

progress-设置进度条的进度

返回:

 

slidingDrawer控件

void setSlidingDrawer (android.widget.SlidingDrawer slidingDrawer| int index, int status)

设置SlidingDrawer控件的开和关

参数:

slidingDrawer-操作的SlidingDrawer控件名称

index-操作的SlidingDrawer控件的索引值

status-设置的开关状态,solo.OPEN表示开,solo.CLOSE表示关

返回:

 

输入方法enter和type

void enterText (android.widget.EditText editText | int index, String text)

对指定的editText输入文本

参数:

editText-指定的editText控件名称

index-指定的editText索引值

text-输入的文本

返回:

 

void enterTextInWebElement (By by, String text)

 

对指定的webEditText输入文本

参数:

by-识别webElement的属性

text-输入的文本

返回:

 

void typeText (android.widget.EditText editText | int index, String text)

 

对指定的editText输入文本

参数:

editText-指定的editText控件名称

index-指定的editText索引值

text-输入的文本

返回:

 

void typeTextInWebElement (By by, String text)

 

对指定的webEditText输入文本

参数:

by-识别webElement的属性

text-输入的文本

返回:

 

void typeTextInWebElement (WebElement webElement, String text)

 

对指定的webEditText输入文本

参数:

webElement-指定的webElement控件名称

text-输入的文本

返回:

 

 

clear方法(清除控件输入值)

void clearText(int index)
通过定位索引清除当前edittext的值
参数:
index 当前edittext的索引值
返回:


void clearText(android.widget.EditText EditText)

通过定位android控件清除当前edittext的值      
参数:

android.widget.EditText 当前edittext的名称
返回:


void clearTextInWebElement(By by)
通过定位By的一些属性清除web控件的text文本

参数:
By-By方法中的属性,有id,name,tagName,textContent,className,xpath,cssSelector等
返回:


ClearLog()
清除日志,不多解释
返回:


 

双指操作

void pinchToZoom (android.graphics.pointF startPoint1,  android.graphics.pointF startPoint2, android.graphics.pointF endPoint1, android.graphics.pointF endPoint2)

用两支手指进行夹紧和扩张的操作

参数:

startPoint1-第一只手指的起始位置

startPoint2-第二只手指的起始位置

 

endPoint1-第一只手指的终止位置

endPoint2-第二只手指的终止位置

返回:

 

 

void swipe (android.graphics.pointF startPoint1,  android.graphics.pointF startPoint2, android.graphics.pointF endPoint1, android.graphics.pointF endPoint2)

用两支手指进行同时移动的操作

参数:

startPoint1-第一只手指的起始位置

startPoint2-第二只手指的起始位置

endPoint1-第一只手指的终止位置

endPoint2-第二只手指的终止位置

返回:


void rotateLarge  (android.graphics.pointF center1,  android.graphics.pointF center2)

大幅度进行两只手指画半圆? 不确定,这个方法没用过

参数:

center1-第一个半圆的圆心,取值为[0, Pi]

center2-第二个半圆的圆心,取值为[Pi, 3*Pi]

返回:

 

void rotateSmall  (android.graphics.pointF center1,  android.graphics.pointF center2)

小幅度进行两只手指画半圆? 不确定这个方法,没用过

参数:

 

center1-第一个半圆的圆心,取值为[0, Pi]

center2-第二个半圆的圆心,取值为[Pi, 3*Pi]

返回:

 

操作activity

 

 

void goBackToActivity(String name)

返回到指定的activity

参数:

name-返回到的activity

返回:

 

void finalize()

终止当前的solo对象并删除activity的监控器

参数:

返回:

 

void finishOpenedActivity()

终止所有打开的activity对象,一般用在teardown()方法中

参数:

返回:

 

截图操作

 

void takeScreenshot ([String name, int quality])

对当前屏幕进行截屏操作,结果存放在/sdcard/Robotium-Screenshots/路径下

注:需要在AndroidManifest.xml中设置写权限,即android.permission.WRITE_EXTERNAL_STORAGE

参数:

可以不使用任何参数

name-截图的名称

quality-截图的质量,其实是压缩比例。取值从0到100,值越大,质量越高,默认80

返回:

 

void startScreenshotSequence (String name [, int quelity, int frameDelay, int maxFrames ])

开始一系列的连续截图操作,结果存放在/sdcard/Robotium-Screenshots/路径下,命名方式为name_加序列号,从0开始。不支持多个模拟器同时截屏。

注:需要在AndroidManifest.xml中设置写权限,即android.permission.WRITE_EXTERNAL_STORAGE

参数:

name-截图的前缀

quality-截图的质量,其实是压缩比例。取值从0到100,值越大,质量越高,默认80

frameDelay-两次截图的时间间隔,单位毫秒,建议不小于100,默认400

maxFrames-最多截多少张,默认100

返回:

 

void stopScreenshotSequence()

结束连续截图操作

参数:

返回:

 

【转载:http://blog.csdn.net/tt75281920/article/details/26946311】

Robotium API -- 除click/clickLong外的其他操作