We know HierarchyViewer is an useful tool in Android SDK. The developer and tester, who haven’t the source code of the application, also can get the the hierarchy view of activities, and every properties and screenshot. Can we have similiar tools for iOS? now the answer is sure.

 

HierarchyViewer for iOS is an open source tool developed by Vowei, use GPL v3 protocol. It is based on eclipse RCP framework, support Mac OS X, Windows and Linux. Following is the screenshot under Mac OS X:

(HierarchyViewer 1.0)

 

For English User, I am sorry currently we haven’t English version, but we are working on it now. I believe you can easy to use Chinese version after you read this acticle.

 

Let us begin to introduce it. HierarchyViewer for iOS have two kind of data source: one is UIAutomation script result log file –- contains Automation Results.plist file and screenshots, generating hierarchyviewer from UIAutomation result log have been implemented since 1.0. the other way is achieving from running app on iOS simulator directly, this is the new feature of 2.0.

 

Open Log File

Open on the toolbar, A file dialog will be opened, select an Automation Results.plist file.

 

Then, you can view all the UI element hierarchy in our tool.

 

How to Create Log File

How can we make the .plist file have UI element information? We must insert following code into the script whatever you interested,it will log all elements structure into result log file:

target.logElementTree()

 

Then, when you Execute it:

 

And export the result log to specified folder:

 

After that, you can open the log file you just created. (There are a log file under /HierarchyViewer-4-iOS/hierarchyviewerlib.test/src/Logs)

 

2.0 New Feature: achieving hierarchy view from running app on iOS simulator

The new feature of 2.0 can be used only on Mac OS X, before you use it, make sure Instruments and iOS simulator is installed on the system.

 

There are 3 buttons is added into toolbar in 2.0:

 

Start the simulator and app

Click, the file dialog will be opened:

 

Select and open an iOS simulator App, the simulator will kick off and the app will be load:

 

Refresh the Hierarchy view

When your UI is changed, you can click the green fresh button , to refresh the hierarchy view.

 

Terminate the simulator and app

Click, will close the simulator.

 

Other features

HierarchyViewer for iOS 2.0 have some othre useful features, for example:

Generating script calls.

Right click the node in the hierarchy view, It can generate the element call and save in the clipboard:

 

In clipboard:

target.frontMostApp().windows()[0].tableViews("Empty list").groups("Advanced Options").elements("Advanced Options")

 

Generating and test iQuery:

iQuery is a jquery-like library developed by Vowei, used to query the iOS and Android UI element. HierarchyViewer have an iquery generator which used to generate and test iQuery statement:

HierarchyViewer for iOS 2.0 BETA Introduction的更多相关文章

  1. 原创开源项目HierarchyViewer for iOS 2.1 Beta新功能介绍

    回顾 HierarchyViewer for iOS是我们发布的一个开源项目,采用GPL v3.0协议. HierarchyViewer for iOS可以帮助iOS应用的开发和测试人员,在没有源代码 ...

  2. iOS.CocoaPods.0

    1. CocoaPods CocoaPods 是Objective-C (iOS and OS X) projects 的依赖管理器. A CocoaPod (singular) is a speci ...

  3. Mozilla Firefox 24.0 Beta 5 发布

    Mozilla今天将Firefox 24.0 Beta 5版本放到了FTP的release目录,新版开始全面支持OS X 10.7全新的滚动条样式,禁止网站插件运行的功能出现在任务栏左侧,调整了界面U ...

  4. 使用cocos2d-x 3.0 beta开发的小游戏

    主要是参考了http://philon.cn/post/cocos2d-x-3.0-zhi-zuo-heng-ban-ge-dou-you-xi 这篇文章,只是移植到了3.0 beta版. 代码地址: ...

  5. iOS 10.0 更新点(开发者视角)

    html, body {overflow-x: initial !important;}html { font-size: 14px; } body { margin: 0px; padding: 0 ...

  6. 千寻浏览器 1.0 Beta 1(524)(2014年5月27日)

    千寻浏览器--又一款新生浏览器今天进入各位浏览迷的视野.千寻浏览器基于IE内核,据传是由百度浏览器的上海团队操刀,在功能定位上,与目前的QQ浏览器有些相似. 千寻来自官方的解释:寻,追寻,探索,又是古 ...

  7. iOS 7.0获取iphone UDID 【转】

    iOS 7.0 iOS 7中苹果再一次无情的封杀mac地址,使用之前的方法获取到的mac地址全部都变成了02:00:00:00:00:00.有问题总的解决啊,于是四处查资料,终于有了思路是否可以使用K ...

  8. iOS 5.0 后UIViewController新增:willMoveToParentViewController和didMoveToParentViewCon[转]

    在iOS 5.0以前,我们在一个UIViewController中这样组织相关的UIView   在以前,一个UIViewController的View可能有很多小的子view.这些子view很多时候 ...

  9. ENVI 5.0 Beta 体验——影像数据的显示

    ENVI 5.0 Beta采用了全新的软件界面,数据的显示和操作跟以往的三视窗方式有很大的区别,下面一块体验一下. 对于栅格数据的显示方面,5.0有了非常大的改进,采用的全新的金字塔计算方法,在第一次 ...

随机推荐

  1. ajaxfileupload.js

    jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId = 'jUploadFrame' ...

  2. 加jdk语句

    export CLASSPATH JAVA_HOMEJAVA_HOME=/data/jdk1.8.0_65CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOM ...

  3. [转]RamDisk导致远程桌面客户端无法启动问题

    在一次重启系统后发现无法运行远程桌面客户端,运行后进行连接即报错. 查看日志有AppCrash错误: 错误应用程序名称: mstsc.exe,版本: 6.1.7600.16385,时间戳: 0x4a5 ...

  4. Objective-C 在Categroy中创建属性(Property)

    Objective-c中category是不能直接创建属性的,这时候我们要用到Objc的runtime来实现 用到的方法有两个 一个是get方法 一个set方法 //get方法objc_getAsso ...

  5. DOM9大节点

    ELEMENT_NODE 1 元素节点 常用 ATTRIBUTE_NODE 2 属性节点 常用 TEXT_NODE 3 文本节点 常用 CDATA_SECTION_NODE 4 CDATA区段   E ...

  6. 在项目里交叉使用Swift和OC【转】

    Swift and Objective-C in the Same Project在项目里交叉使用Swift和OC Swift与OC的兼容性使得你可以在项目里使用Swift+OC的方式编写应用程序,称 ...

  7. iOS ARC中CTCallCenter没用,无法监听电话的解决方案

    今天在尝试使用CTCallCenter进行电话监听时,发现一直无法捕获电话状态改变的事件,研究了一番之后找到了解决方案,在这里分享给大家. 首先使用CTCallCenter监听电话的代码如下: CTC ...

  8. webstorm 代码自动换行

    代码自动换行 菜单File→Settings→Editor→General

  9. JS对象之间的关系

    JS对象类型 JS中,可以将对象分为"内部对象"."宿主对象"和"自定义对象"三种. 1.本地对象 ECMA-262定义为"独立于 ...

  10. RDIFramework.NET ━ 9.7 操作权限项管理 ━ Web部分

    RDIFramework.NET ━ .NET快速信息化系统开发框架 9.7 操作权限项管理 -Web部分 随着经济全球化趋势的发展和企业间竞争的加剧,企业对管理要求不断变化.提高,越来越多的信息都表 ...