想通过javascript单击一个按钮以进行测试。我可以单击第一页上的按钮,但不知道如何单击第二页上的按钮,该按钮在单击第一页上的按钮后出现。
问问题
3920 次
2 回答
3
您只需要在第二页上引用该按钮——因此您从第一页开始重复该过程。可能,你做了这样的事情(这段代码来自我使用标签栏控制器的应用程序):
// Now tap the add button
var navBar = mainWindow.navigationBar();
navBar.buttons()["Add"].tap();
// Now the app loads a new page
// Get the nav bar again (it would have changed after the tap above)
navBar = mainWindow.navigationBar();
所以,答案很简单——只需调用相同的函数,它们就会返回当前屏幕上的任何内容。
于 2011-02-16T08:51:01.777 回答
1
首先,您必须确保该按钮是可访问的。在 Interface Builder 中设置 Accessability 属性(Identity Inspector - 最后一个选项卡)并为按钮提供适当的 Accessability Label。如果您不使用 Interface Builder,您可以通过编程方式设置按钮上的属性。
现在在脚本中你可以调用
mainWindow.buttons()["name of the accessability label"].tap();
主窗口是:
var target = UIATarget.localTarget();
var application = target.frontMostApp();
var mainWindow = application.mainWindow();
还要确保按钮可见。该按钮必须是标记为可访问的视图层次结构中最深的元素。如果包含按钮的视图被启用为可访问,它将隐藏按钮的可访问性(这是一个子视图)。
您可以通过以下方式记录屏幕中的所有可见元素
mainwindow.logElementTree();
此外,您始终可以使用一个脚本。mainWindow.elements() 引用了在某个时刻显示的视图。
于 2011-03-09T13:05:37.983 回答