1

如何将 XPath 定位器重新制作为 UIAutomation 定位器?例如这个 xpath 定位器: //UIAApplication[1]/UIAWindow[4]/UIAAlert[1]/UIAScrollView[1]/UIAStaticText[2]

有任何想法吗?

4

2 回答 2

1

有多种方法可以将 xpath 值重新制作为 UIautomation,方法如下。

[!计算器应用示例]

http://i.stack.imgur.com/WQr3J.png

在进入这些点之前,FYI 类名被用作 xpath 的参考。

  1. 使用类和文本属性的 XPath:在上图中,您可以看到按钮 5 的文本属性值 = 5,这是唯一的。类名是 android.widget.Button,对于所有数字按钮都是相同的。所以我们可以使用类名的文本属性值创建 XPath,如下所示。xpath("//android.widget.Button[@text='5']")

  2. 使用类和资源 ID 的 XPath:这里按钮 5 的资源 ID 是 com.android.calculator2:id/digit5。每个数字按钮的资源 ID 的尾随部分(例如 digit5、digit4、digit7)都在变化,因此我们可以使用 contains 函数来获取按钮 5 的相对 XPath,如下所示。xpath("//android.widget.Button[contains(@resource-id,'digit5')]")

于 2016-04-21T06:54:52.317 回答
0

您可以从 Instrument.(Xcode - 自动化工具) 获取 UIAutomator

请为您的代码找到以下 UIAutomator, UIATarget.localTarget().frontMostApp().windows()[3].alerts()[0].scrollViews()[0].staticTexts()[1]

注意:在 Xpath 中,索引从 1 开始。但在 UIAutomator 中,它从 0 开始。记住这一点。

于 2016-06-24T14:37:40.033 回答