如何在Xcode中访问mainWindow的子节点以进行UI自动化

时间:2013-10-07 22:52:33

标签: ios ui-automation ios-ui-automation

我的应用程序的mainWindow()中有一个结构如下:

enter image description here

在靠近图像顶部的UIAWindow的子目录中,我正在尝试访问第1项,它是UIAButton。

此结构由

生成
#import "tuneup/tuneup.js"

goAbout = function(target, app)
{
    UIATarget.localTarget().frontMostApp().mainWindow().logElementTree();

};

test("go about", goAbout);

如果我添加.button()[1],则会引发异常,因此我无法做到这样的事情

...
UIATarget.localTarget().frontMostApp().mainWindow().buttons().logElementTree();

如何访问UIAWindow子目录子目录中的对象?

2 个答案:

答案 0 :(得分:0)

那个树层次结构对我来说没有任何意义,我最终利用目标方法来访问窗口的元素。干杯!

答案 1 :(得分:0)

您可以通过添加.buttons()[0]来访问该按钮。在

UIATarget.localTarget().frontMostApp().mainWindow().buttons();

表达式返回一个javascript数组(基于0的索引)。

在这里您可以找到一个相当有用的文档: https://developer.apple.com/library/ios/documentation/DeveloperTools/Reference/UIAutomationRef/UIAutomationRef.pdf

无论如何研究这个plist并不是探索对象层次结构最方便的方法。我更喜欢直接检查仪器输出。 (或标准输出,如果从命令行运行仪器。)

相关问题