iPhone自动测试APIUIAutomation.docx_第1页
iPhone自动测试APIUIAutomation.docx_第2页
iPhone自动测试APIUIAutomation.docx_第3页
iPhone自动测试APIUIAutomation.docx_第4页
iPhone自动测试APIUIAutomation.docx_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

如果想用var target = UIATarget.localTarget();var app = target.frontMostApp();var window= app.mainWindow();var login = window.buttons()login;login.tap();这种方式来访问login按钮,你就必须到Xib里设置Setting theaccessibility label in Interface Builder登录按钮的属性为login.如果是用代码生成的login按钮,就需要加入以下代码:UIButton* button = UIButton buttonWithType:UIButtonTypeCustom; button addTarget:self action:selector(login:) forControlEvents:UIControlEventTouchUpInside;button setAccessibilityLabel:login; self.view addSubview:button;现在,在自动化测试代码里,就可以直接通过名字来调用了.还可以通过以下内容来获取当前这个值里,更多的值:name: 通过名字来获取元素value: 获取元素设置的值,如文本框内容elements: 任何包含在当前元素的子元素,例如,在表视图中的单元格parent: 元素,其中包含当前元素的父元素var target = UIATarget.localTarget();在元素层次结构的顶部是UIATarget类,它代表被测系统的设备(或模拟器)最高层次的用户接口元素对于测试的目的,您的应用程序是最前面的应用程序(或目标应用程序)通过以上代码可以获取.var app = target.frontMostApp();应用程序的主窗口中.UIATarget.localTarget().frontMostApp().mainWindow().tableViews()0;主界面的第一个表UIATarget.localTarget().frontMostApp().mainWindow().tableViews()0.cells()0;主界面第一个表的第一个单元格UIATarget.localTarget().frontMostApp().mainWindow().tableViews()0.cells()0.elements()Chocolate Cake;主界面第一个表的第一个单元格中,名为 Chocolate Cake 的元素UIATarget.localTarget().logElementTree();显示应用程序的目录结构.logElementTree() 这句代码对多个元素都有用,可以用来查看元素里面有哪些元素,还有名字等.UIATarget.localTarget().tap(x:100, y:200);UIATarget.localTarget().doubleTap(x:100, y:200);屏幕x y 坐标按一下.屏幕x y 坐标按两下.UIATarget.localTarget().twoFingerTap(x:100, y:200);测试捏合与放大UIATarget.localTarget().pinchOpenFromToForDuration(x:20, y:200, x:300, y:200, 2);UIATarget.localTarget().pinchCloseFromToForDuration(x:20, y:200, x:300, y:200, 2);测试在2秒钟内,指定坐标的放大.测试在2秒钟内,指定坐标缩小.UIATarget.localTarget().dragFromToForDuration(x:160, y:200, x:160, y:400, 1);1秒钟内拖拽坐标位置UIATarget.localTarget().flickFromTo(x:160, y:200, x:160, y:400);快速的拖拽,没有时间参数.UIATarget.localTarget().frontMostApp().mainWindow().textFields()0.setValue(recipeName);设置第一个文本框的内容var tabBar = UIATarget.localTarget().frontMostApp().mainWindow().tabBar();var selectedTabName = tabBar.selectedButton().name();获取导航按钮名字UIATarget.localTarget().frontMostApp().mainWindow().tableViews()0.scrollToElementWithPredicate(name beginswith Turtle Pie);滚动到表格名字以Turtle Pie开头的地方.名字可是不确定的,可以用这个方法来定位.scrollToElementWithName() 名字确定的位置scrollToElementWithValueForKey()值确定的位置.UIATarget.localTarget().pushTimeout(2);指定超时为2秒钟UIATarget.localTarget().popTimeout();超时弹出UIATarget.localTarget().delay(2);延时执行.常用于登录的时候,网络请求,我一般会延时20秒,然后做下一个界面的操作.var cell = UIATarget.localTarget().frontMostApp().mainWindow().tableViews()0.cells() .firstWithPredicate(name beginswith Tarte);if (cell.isValid() UIALogger.logPass(testName);else UIALogger.logFail(testName);验证所在的table里,是否包含了名字开头为Tarte的元素.测试日志记录var testName = Module 001 Test;UIALogger.logStart(testName);/测试开始/some test codeUIALogger.logMessage(Starting Module 001 branch 2, validating input.);/中间加的测试日志,用来给自己区分测试内容和位置等变量UIATarget.localTarget().captureScreenWithName(SS001-2_AddedIngredient);/抓取当前测试的屏幕保存名字为:SS001-2_AddedIngredient/more test codeUIALogger.logPass(testName);/测试结束,给的测试标记以下框为弹出框处理,从官方的文档来看,可以做全局监听.所谓全局监听是,当有弹出框时,他都会调用这段代码.从实际的使用效果来看,是可以监听全局的弹出框.做这个功能的时候,发现,如果程序启动的时候,很快的弹出对话框,没有办法做到监听并且点击到.得手动启动程序来点击.UIATarget.onAlert = function onAlert(alert) var title = (); UIALogger.logWarning(Alert with title + title + encountered.); if (title = The Alert We Expected) alert.buttons()Continue.tap(); return true; /处理警告,返回true,跳过默认的处理方法 return false;/返回false,使用默认的处理方法.UIATarget.setDeviceOrientation 用来设置 设备方向UIA_DEVICE_ORIENTATION_UNKNOWN 设备的方向不能确定。UIA_DEVICE_ORIENTATION_PORTRAIT 设备Home键在底部的。UIA_DEVICE_ORIENTATION_PORTRAIT_UPSIDEDOWN 设备Home键在顶部。UIA_DEVICE_ORIENTATION_LANDSCAPELEFT 设备Home键在右侧。(这二个地方,不知道是不是官方的xcode写错了,好象写反了,没有求证)UIA_DEVICE_ORIENTATION_LANDSCAPERIGHT 设备Home键在左侧。UIA_DEVICE_ORIENTATION_FACEUP 设备是屏幕地平朝上。UIA_DEVICE_ORIENTATION_FACEDOWN 设备是屏幕地平朝下。UIATerfaceOrientation 设置界面方向UIA_INTERFACE_ORIENTATION_PORTRAIT 界面是纵向模式下,Home按钮的底部。UIA_INTERFACE_ORIENTATION_PORTRAIT_UPSIDEDOWN 界面是纵向模式下,但倒过来,Home按钮的顶部。UIA_INTERFACE_OR

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论