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):
二、配置:
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即可。