iOS自动化测试中,最关键的问题就是UI控件元素的识别,Xcode中的UIAutomation可以辅助做这个工作,但是使用时,需要启动Instrument,并启动录制脚本,比较麻烦。

下面为大家介绍另一款工具,Reveal。Reveal是一款运行在Mac OS上的应用,要调试iOS应用,开发者要将应用程序与Reveal安装的框架层关联。Reveal会扫描其网络中关联的应用程序,并让开发者选择连接其中之一,当连接到一个应用程序后,Reveal将显示其UI,其中包括大量的参数和设置。除了解析出UI参数外,Reveal也会通过一个分解的3D视图显示复杂的UI层次结构。开发者可以轻松的检查UI组件的分层,并在其层次结构中选择特定元素。为了进一步简化调试,也可以仅关注部分UI,而把其余部分屏蔽起来。Reveal可以和iOS模拟器一起使用,也可以用在运行在真机上的应用程序上。

如下图,是优酷视频iOS客户端的UI层级:

下面简单介绍下Reveal的配置及使用(Xcode 5.0.2,Mac OS 10.9.1):

一、下载:http://revealapp.com/

二、配置:

1、获取framework。

1)点击Help下的Show Reveal Library in Finder,如下图:

2、配置Xcode:

1)将Reveal.framework拖到被测工程中,如下图:

2)配置Build Setting,在Build Setting下的Linking下的Other Linker Flags下添加-ObjC -framework Reveal,如下图:

3)配置Build P'hases,将Build Phases下的Reveal.framework从Link Binaries With Libraries下删除,即:

三、使用

1、重新在模拟器上或真机上运行xcode工程,就可以看到文章最开始的截图。

2、如果在真机上运行程序,需要确认真机与Mac在同一个Wifi下。

3、App切换页面,只需点击Reveal右上角的刷新icon即可。

Reveal作为分析APP UI的利器确实非常好用,用来查看任意UI布局也很方便

一.模拟器进行分析

  1.打开Reveal(http://revealapp.com下载)

  2.打开Xcode

  3.Reveal——Help——Show Reveal Library in Finder

      

  4.Xcode——导入Reveal.framework至当前项目中

      

  5. 工程设置中,在Other Linker Flags项增加-ObjC -framework Reveal

  6.运行当前项目后,打开Reveal,选择当前运行程序进行关联

      

  7.连接成功后,应用的UI层次 元素都可以妥妥的看到了

    

二.延长Reveal试用时间

  对于官网下载的Reveal,默认给予的是30天的使用限制,然后得付款……在天朝讲究付款(=寻找破解方法),然后开始找破解方法,http://jingwei6.me/2014/02/28/reveal_crack.html直接看结论:

  ”所以,要想永久试用Reveal,只需要打开

  ~/Library/Preferences/com.ittybittyapps.Reveal.plist

  把IBAApplicationPersistenceData这一项删除就是了。”

  然后测试没有成功,再次打开软件还是弹出试用提示,继续尝试,用CleanMyMac打开发现有文件存在,删掉后重复上面的步骤,再次打开Reveal,OK成功,不过在后上角看到还是有试用小提示,时间又变成30天,总来说这个方法只能延长时间,还是没能实际破解,继续寻找好的方法!

iOS自动化测试辅助工具--Reveal配置及使用相关推荐

  1. IOS 辅助工具Reveal

    文章目录 Reveal的下载 Reveal的安装 Reveal的使用 Reveal是一款可以在iOS开发过程中用于界面控件分析的开发辅助工具.借助Reveal,我们可以对App界面上的所有可见元素进行 ...

  2. 十个好用的iOS开发辅助工具与资源

    为了开发出更好.更有创意又高质感的iOS应用程式,方便又大腕的辅助工具以及免费资源是绝对少不了的!这边让我们来介绍一些常用又简单的免费小工具吧. 1.Resizer:将Retina使用的图档(档名为@ ...

  3. android自动化测试辅助工具Weinre

    Weinre是一个类似于普通浏览器的inspector功能的一个软件工具. 调研的目的:我们在写android自动化测试用例涉及到webview的时候,抓取页面元素非常苦恼. 通常的做法是:跑一些脚本 ...

  4. iOS自动化测试(一)-技术方案、环境配置与疯狂踩坑

    移动端的自动化测试,最常见的就是Android自动化测试,IOS相较于Android要安全稳定的多,但是IOS也是一个需要测试的方向,作为测试,不认真测一下心里还是过意不去,只是我个人觉得Androi ...

  5. 5 个 APP 自动化测试辅助定位工具,你用过几个?

    UI 自动化测试时,先要定位到需要操作的元素,然后才能执行指令. 在网页端可以非常方便的通过 devtools 工具(也就是经常说的 F12) 获取和编写元素定位表达式. 但是在移动端自动化时,这种辅 ...

  6. mac json格式化工具_一个在 MAC 上 iOS/Flutter 开发的辅助工具

    大家好,我是章鱼猫. 今天给大家推荐的这个开源项目,是来自于我们公众号读者的投稿,这个东西还挺好的. 如果你作为读者,也有自己的开源项目或者你也有想推荐的开源项目,都可以向我们投稿,我们就是致力于帮助 ...

  7. 跨平台iOS自动化测试工具——tidevice

    前言 一直以来,iOS自动化的实现&执行都依赖 Mac 系统,其主要原因是因为需要通过 Xcodebuild 编译&安装 WDA (WebDriverAgent) 到 iOS 设备中, ...

  8. 开源 iOS 性能优化/调试辅助工具集 MTHawkeye

    MTHawkeye 是美图 iOS 团队在使用的调试辅助.性能优化辅助工具集,旨在帮助 iOS 开发者提升开发效率.辅助优化性能体验. 在产品开发周期内,我们引入 MTHawkeye 来帮助我们更快的 ...

  9. 芈珺:iOS自动化测试工具总览

    2019独角兽企业重金招聘Python工程师标准>>> 芈珺:iOS自动化测试工具总览 从实用性的角度,剖析常见的iOS自动化测试工具,在学会使用自动化测试工具的同时,学会工具的设计 ...

最新文章

  1. [wp7游戏]wp7~~飞行射击精品游戏~~集合贴
  2. 用Java语言,写一个植物大战僵尸简易版!
  3. Serverless 在大规模数据处理的实践
  4. 解决C/C++语言中全局变量重复定义的问题
  5. 性能测试培训: 监控CPU之python
  6. 让我们在退烧中更清醒:谨慎投机性创业和投资的危害
  7. Redis高频面试笔记:基础+缓存雪崩+哨兵+集群+Reids场景设计
  8. python接口自动化(十五)--参数关联接口(详解)
  9. javascript对table的添加,删除行的操作
  10. 2018蓝桥杯B组:第几个幸运数字(JAVA/C++)
  11. DXperience 6.3.9 for Visual Studio 2002, 2003
  12. gRPC调试, 用 Apipost
  13. 和cc2500通信时总是读入0F
  14. 单点登录 Oauth2认证 详解
  15. 用HLM软件做跨层中介效应检验的一些缺点
  16. 生物特征识别数据泄露事件
  17. python 导入第三方包_Python第三方包的导入
  18. java过滤特殊字符,只留下字母、数字和汉字
  19. 如何解决Mysql安装时卡在starting server的方法?(亲测有效)
  20. 【linux】centos7 升级gcc版本

热门文章

  1. Flutter 开发踩坑记录
  2. 狂神说MySQL03:DML语言
  3. “神秘盒子”或威胁全球运输船
  4. Oracle中进行分页查询的三种方法
  5. Flutter 中的自定义 AppBar
  6. 打造人气餐厅必读:餐饮空间设计三大特性-餐饮全案设计分享
  7. 职位扫盲(CEO,CTO。。。)
  8. css的rotate3d实现炫酷的圆环转动动画
  9. 找准定位是SaaS厂商发展关键
  10. nodejs解决跨域问题