1

截屏:

我正在尝试使用 appium 中的元素 ID 来自动单击菜单按钮。默认情况下未设置,它显示 NULL 没有元素 ID 或 Text 这是不可能的。有人可以帮我吗?

4

3 回答 3

2

你可以使用这个:

driver.findElementByName("Open navigation drawer").click();

或者

driver.findElementByXPath("//*[@class='android.widget.ImageButton' and @content-desc='Open navigation drawer']").click();
于 2016-01-14T14:28:47.547 回答
1

您总是可以通过 XPath 找到元素,可以通过以下方式完成:

  1. 使用注解声明元素(记得导入@FindBy):

@FindBy(xpath = "//android.widget.LinearLayout[1]/android.widget.FrameLayout[1]/android.widget.TextView[1]") private WebElement elementName;

  1. 在代码中使用 findElement: driver.findElementByXPath("putXpathHere");

元素的 XPath 可以在 ID 下方的 Appium 的检查器中找到。

如果您想在这种情况下使用 ID 而不是 xpath,恐怕您必须在应用程序代码中添加资源 ID。

于 2016-01-14T10:22:29.247 回答
0

您可以使用内容描述单击汉堡包图标。像这样:

    driver.findElementByAccessibilityId("Open navigation drawer").click();
于 2018-08-04T08:50:28.213 回答