1

我正在使用仪器工具上的自动化工具检查我的应用程序,当我通过javascript单击第二个选项卡时,我的应用程序有两个选项卡,下面的代码

var target = UIATarget.localTarget();

var app = target.frontMostApp();
var window = app.mainWindow();
var tabbar = window.tabBar().buttons()["Product"].tap();
UIALogger.logStart("Logging element tree …");
UIALogger.logPass();

它工作得很好。在产品选项卡中有一个 UITableviewcontroller 现在我正在编写用于单击 tableview 单元格的 javascript,如`

tabar.tableviews()[0].cells()[0].tab;

不工作。我该如何处理这个问题。

4

1 回答 1

1

我不认为你想从标签栏开始找到你的表格视图,但我不完全确定我理解你的问题。我也在处理一些 UIAutomation 脚本,所以这里有几个片段——希望其中一个是相关的。

要点击 UIToolBarController 中的按钮,我使用以下命令:

var app = target.frontMostApp();
app.mainWindow().tabBar().buttons()["Saved"].tap(); // The name of the button is "Saved".

您也可以使用索引,例如第一个标签栏按钮的 [0]。在带有 UITableView 的屏幕上,我使用它来点击其中的一个单元格:

app.mainWindow().tableViews()[0].cells()["Name"].tap(); // The cell is named "Name".

同样,您也可以使用索引。请注意,我不是从标签栏开始,而是从 app 变量开始。

如果某些事情没有按照您认为的方式工作,请始终注销树并查看它包含的内容。这总是帮助我:

app.mainWindow().tableViews()[0].logElementTree();

Apple 文档对此有更多示例。

于 2012-12-06T20:33:47.663 回答