【转】Android自动化测试(UiAutomator)——UiObject
本文主要讲解使用UiAutomator的一些技巧,希望对于初学者有一定的帮助
UiObject
1、首先要声明对象
UiObject XXX = new UiObject(new Selector) ;
2、其次对对象进行操作
操作类型包括:
执行类:文本输入与清除、点击/长按、拖动/滑动、
属性类:文本内容、获取子类、是否存在、是否可用
点击
click ():点击对象
clickAndWaitForNewWindow (long timeout):点击对象,等待新窗口出现,参数为等待超时时长,
clickAndWaitForNewWindow ():点击对象,等待新窗口出现
clickBottomRight ():点击对象的右下角
clickTopLeft ():点击对象的左上角
长按
longClick ():长按对象
longClickBottomRight ():长按对象右下角
longClickTopLeft ():长按对象左上角
拖拽
dragTo (UiObject destObj, int steps):拖拽对象到另一个对象位置上面,可以设置拖动的速度,默认40 steps
dragTo (int destX, int destY, int steps):拖拽对象到某个坐标位置,步长可以设置,默认40 steps
滑动
swipeDown (int steps):拖动对象向下滑动,步长可以设置
swipeLeft (int steps):拖动对象向左滑动,步长可以设置
swipeRight (int steps):拖动对象向右滑动,步长可以设置
swipeUp (int steps):拖动对象向上滑动,步长可以设置
输入/清楚文本
setText (String text):设置文本框对象的文本内容
clearTextField ():清除文本框对象的文本内容
获取对象属性
getBounds ():获取对象的矩形坐标,即矩形左上角和右下角坐标
getChild (UiSelector selector):获取对象的子对象,可以根据子对象的特殊属性来获取
getChildCount ():获取下一级子类的数量
getClassName ():获取对象的类名
getContentDescription ():获取对象的文本描述
getFromParent (UiSelector selector):从父类获取子类,根据子类的特殊属性来获取
getPackageName ():获取对象的包名
UiSelector getSelector ():获取selector,用于调试,实用性不大
getText ():获取对象的文本信息
getVisibleBounds ():返回可见视图的范围
属性判断
isCheckable ():检查对象的Check属性是否为true,判断当前对象是否可以打钩
isChecked ():检查对象的Checked属性是否为true,判断当前对象是否已经打钩
isClickable ():检查对象的Click属性是否为true,判断当前对象是否可以点击
isEnabled ():检查对象的Enable属性是否为true,判断当前对象是否可用
isFocusable ():检查对象的Focusable属性是否为true,判断当前对象是都可以获取焦点
isFocused ():检查对象的Focus属性是否为true,判断当前对象是否已经获取焦点
isLongClickable ():检查对象的LongClick属性是否为true,判断当前对象是都可以长按
isScrollable ():检查对象的LongClick属性是否为true,判断当前对象是都可以滑动
isSelected ():检查对象的Selected属性是否为true,判断当前对象是都已经选中
手势操作
performMultiPointerGesture (PointerCoords... touches):执行单手指触控手势,可定义任何手势和形状
performTwoPointerGesture (Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps):执行任意两个手指触控,模拟两个手指手势
pinchIn (int percent, int steps):手指操作,两点向内收缩
pinchOut (int percent, int steps):手指操作,两点向外扩展
对象是否存在
waitForExists (long timeout):等待对象出现, 可设置时长
waitUntilGone (long timeout):等待对象消失, 可设置时长
exists ():判断对象是否存在
【转】Android自动化测试(UiAutomator)——UiObject的更多相关文章
- Android自动化测试-UiAutomator2环境搭建
Android自动化测试-UiAutomator环境搭建(QQ交流群:490451176) 一.环境准备 1. 安装android sdk,并配置环境变量 2. 安装android studio,国内 ...
- 【转】Android自动化测试(UiAutomator)简要介绍
一.一个BUG引发的问题 如果研发过程中有一个BUG:“不断的切换手机语言出现花屏现象”.这个问题我们如何验证呢?我想,最好的方式应该是自动化测试. 那么,自动化测试可以完成哪些任务呢? ...
- Android自动化测试(UiAutomator)
一.一个BUG引发的问题 如果研发过程中有一个BUG:“不断的切换手机语言出现花屏现象”.这个问题我们如何验证呢?我想,最好的方式应该是自动化测试. 那么,自动化测试可以完成哪些任务呢? ...
- Android自动化测试框架UIAutomator原理浅析
UIAutomator是一个Android自动化测试框架,是谷歌在Android4.1版本发布时推出的一款用Java编写的UI测试框架,它只能用于UI即黑盒方面的测试.所以UIAutomator只能运 ...
- 解放双手——Android自动化测试
解放程序猿宝贵的右手(或者是左手) http://blog.csdn.net/eclipsexys/article/details/45622813 --Android自动化测试技巧 Google大神 ...
- Android自动化测试探索
Android自动化测试探索 前言 通常来说,我们开发完成产品之后,都是由测试组或者是我们自己点一点,基本上没有问题了就开始上线.但是,随着时间的堆叠,一款产品的功能也越来越多.这时,我们为了保证产品 ...
- 几种常见的Android自动化测试框架及其应用
随着Android应用得越来越广,越来越多的公司推出了自己移动应用测试平台.例如,百度的MTC.东软易测云.Testin云测试平台…….由于自己所在项目组就是做终端测试工具的,故抽空了解了下几种常见的 ...
- Eclips+ADT+SDK构建android开发环境及android自动化测试开发环境
一. 需要用到的包: 1.adt-bundle-windows-x86_64-20140702.zip+JDK+ant 2.ant下载地址:http://ant.apache.org/bindownl ...
- Android自动化测试-Robotium(一)简介
一.Robotium原理 Robotium是一款Android自动化测试框架,主要针对Android平台的应用进行黑盒自动化测试,它提供了模拟各种手势操作(点击.长按.滑动等).查找和断言机制的API ...
随机推荐
- spring集成redis,集成redis集群
原文:http://chentian114.iteye.com/blog/2292323 1.通过spring-data-redis集成redis pom.xml依赖包 <project xml ...
- Oracle Service Bus Socket Adapter调整的参数
之前在一个客户中做压力测试时候Oracle Service Bus性能大概达到900tps左右,和客户期望的1600tps有很大差距. 在研究了Socket Adapter的工作原理之后,判断可能是O ...
- Go语言的9大优势和3大缺点, GO语言最初的定位就是互联网时代的C语言, 我为什么放弃Go语言
Go语言的9大优势和3大缺点 转用一门新语言通常是一项大决策,尤其是当你的团队成员中只有一个使用过它时.今年 Stream 团队的主要编程语言从 Python 转向了 Go.本文解释了其背后的九大原因 ...
- Cobbler安装CentOS 7网卡命名修改
准备上线CentOS 7.x,在Cobbler上导入后,发现网卡名称变成了eno1这样的,好吧,那就添加两个内核参数上去,让它变回eth0. cobbler profile edit --name=C ...
- webpack配置:打包第三方类库、第三方类库抽离、watch自动打包、集中拷贝静态资源
一.打包第三方类库 下面说2种方法: 第一种: 1.引入jQuery,首先安装: npm install --save-dev jquery 2.安装好后,在index.js中引入,用jquery语法 ...
- Python图像处理(8):边缘检測
快乐虾 http://blog.csdn.net/lights_joy/ 欢迎转载,但请保留作者信息 此前已经得到了单个区域植株图像,接下来似乎应该尝试对这些区域进行分类识别.通过外形和叶脉进行植物种 ...
- More is better——并查集求最大集合(王道)
Description Mr Wang wants some boys to help him with a project. Because the project is rather comple ...
- 【千纸诗书】—— PHP/MySQL二手书网站后台开发之知识点记录
前言:使用PHP和MySQL开发后台管理系统的过程中,发现有一些通用的[套路小Tip],这里集中记录一下.结合工作中ing的后台业务,我逐渐体会到:除了技术知识外.能使用户体验好的“使用流程设计”积累 ...
- 倍福TwinCAT(贝福Beckhoff)常见问题(FAQ)-人机界面如何快速调整大量控件的位置
打开元素列表,然后直接从顶部按住Shift批量选中控件即可 更多教学视频和资料下载,欢迎关注以下信息: 我的优酷空间: http://i.youku.com/acetaohai123 我的 ...
- DriverStore文件夹特别大,能删除吗?
DriverStore文件夹特别大,能删除吗? DriverStore\FileRepository文件夹特别大,能删除吗? C:\Windows\System32\DriverStore\FileR ...