网站大量收购独家精品文档,联系QQ:2885784924

UiAutomator自动化测试.pptx

  1. 1、本文档共19页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
UiAutomator自动化测试 1 UI自动化测试框架介绍 测试框架 介绍 优缺点 Monkeyrunner 语言:python 运行环境:python环境,pc连接设备后adb运行脚本文件 测试对象:UI测试 优点:操作简单,可以录制测试脚本 缺点:主要使用坐标,移植性不强,业务逻辑判断较差 Instrumentation 语言:java 运行环境:adb命令启动或者手机中直接启动 测试对象:白盒测试、UI测试 1、针对单个apk测试 2、需要源码,需要对apk重新签名 3、需要root权限 Robotium 语言:java,基于Instrumentation的封装 运行环境:同Instrumentation 测试对象:同Instrumentation 同Instrumentation UiAutomator 语言:java 运行环境:pc连接设备后adb运行脚本文件或直接通过eclipse运行 测试对象:UI测试 优点: 1、简单易学,可模拟大部分手工操作 2、无Activity限制,无需签名,无需root权限 3、基于应用UI元素控制,灵活精确 缺点: 1、无法配合 OpenGL和HTML5应用使用,因为这些应用没有 Android UI 组件 2 UiAutomator简介 UiAutomator是google在安卓4.1版本推出的一套基于UI控件的自动化测试框架,可模拟人对手机的操作,主要用于UI自动化测试。由下面两套工具组成: Uiautomatorviewer:扫描、分析待测应用的UI组件的图像工具(路径: sdk安装文件夹\tools\uiautomatorviewer.bat)。 Uiautomator:包含功能界面测试API和自动化运行测试用例的引擎的JAVA类库。 3 UiAutomator框架 UiDevice 代表设备状态,可以通过UiDevice来检测设备的各种属性如当前屏幕尺寸,同时也可以进行设备级别相关操作:按钮、拖拽、转换屏幕转向 UiSelector 代表UI控件搜索的条件,基于对元素描述的各种属性,可以获得该元素控件从而进行相关操作 UiObject 代表一个UI控件,通过UiSelector来查找UiObject UiCollection 代表控件的集合,通过UiSelector选取符合条件的元素集合,通常用于遍历 UiScrollable 代表可滚动控件,模拟水平或者垂直滚动的UI元素,当元素在屏幕外需要滚动屏幕才能看到的情况下需要使用UiScrollable 4 UiAutomator环境搭建 开发工具:eclipse  开发环境:JDK1.6以上 编译环境:Android SDK、 Ant(基于Java的构建工具,用于编译uiatutomator测试工程,自动完成所有的构建过程) 5.1 UiAutomator对象之UiDevice 通常用于获取系统的设备信息、系统按键、全局操作等 1、获取坐标参数 UiDevice.getInstance().getDisplayHeight()/getDisplayWidth() 获取屏幕高度/宽度 2、获取信息信息,包括屏幕分辨率、亮灭屏状态等 UiDevice.getInstance().getCurrentActivityName() 获取当前界面Activity 3、滑动、拖拽操作 UiDevice.getInstance().drag(startX, startY, endX, endY, steps) 拖拽坐标处对象到另一个坐标 4、输入按键 UiDevice.getInstance().pressKeyCode(KeyEvent.KEYCODE_A) 5、系统按键 UiDevice.getInstance().wakeUp()/sleep() 按电源键亮屏/灭屏 5.2 UiAutomator对象之UiSelector(1) 通常使用UiSelector,通过各种属性节点和关系来定位组件。 通过uiautomatorviewer,我们可以找到很多对象的属性,可以通过这些属性来定位需要的元素对象 5.3 UiAutomator对象之UiSelector(2) 1、通过text、description属性定位 UiSelector().text(text) //通过text完全定位 UiSelector().description(description) //通过description完全定位 2、通过resourceId定位 UiSelector().resourceId(id) //通过resourceId定位 3、通过class、package定位 这种方式适用于当前页面上

文档评论(0)

1112111 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档