自定义控件上的iOS自动化脚本无法正常工作

时间:2015-02-03 16:11:48

标签: javascript ios automation custom-controls

我正在玩自动化脚本,而且我试图在我的视图上访问控件。此控件继承自UIControl并作为按钮使用。

我设置此属性以访问组件:

enter image description here

所以在这一点上我希望通过这个脚本自动点击按钮:

var target = UIATarget.localTarget();
var app = target.frontMostApp();
var window = app.mainWindow();

window.scrollViews()[0].buttons()["ButtonLogin"].tap();

但事实并非如此,因为它找不到ButtonLogin。 按下控件的唯一方法是静态文本:

window.scrollViews()[0].staticTexts()["Log in"].tap();

但不幸的是,这对我不起作用,因为我可以使用不同的语言,因此" 登录"文字可能会改变。

我需要一种通用的方式来访问该控件。使用正常的buttonstextFields,它可以正常设置辅助功能的标识符(如上图所示),但在这种情况下似乎无效。

我也尝试过:

window.scrollViews()[0].elements()["ButtonLogin"].tap();

没有成功。

感谢。

更新:

现在结束时我解决了对视图层次结构中索引的引用:

window.scrollViews()[0].staticTexts()[0].tap();

但无论如何我想使用辅助功能,因为视图层次结构可能会改变。

1 个答案:

答案 0 :(得分:-1)

看看Instruments User Guide。基本上你应该使用accessibilityIdentifier属性。