使用 class 和索引单击元素时出现问题
Problem clicking elements using class and index
我正在尝试编写代码以自动在 Instagram 上向人们发送私信。我坚持获取代码以单击 DM 按钮。
在 UIautomatorviewer 中,没有文本或资源 ID,所以我尝试使用 class。
当我 运行 代码时,它没有点击正确的东西。它单击 NEXT 按钮。
这是代码 -
By path2 = By.xpath("//android.widget.ImageView[@index='3']");
driver.findElement(path2).click();
Thread.sleep(5000);
有人可以帮忙吗?我是新手,所以我不是很有经验。
因为我看不到整个 XML 我真的不能说你做错了什么,但可能你的 xpath 不正确。
使用 UIAutomatorViewer,您可以保存 XML,然后您可以在其上测试您的 xpath。使用 XMLSpy 或像 https://www.freeformatter.com/xpath-tester.html 这样的在线工具。
可能还有更多 android.widget.ImageView 索引 = 3,我认为 appium 选择了第一个?因此,您可以将 xpath 更改为更独特的,例如:
//android.widget.FrameLayout//android.widget.LinearLayout//android.widget.ImageView[@index='3']"
基于 UIAutomator Viewer 屏幕,您还可以使用 content-desc
,如下所示
By path2 = By.xpath("//android.widget.ImageView[contains(@content-desc,'Message')]");
driver.findElement(path2).click();
我正在尝试编写代码以自动在 Instagram 上向人们发送私信。我坚持获取代码以单击 DM 按钮。
在 UIautomatorviewer 中,没有文本或资源 ID,所以我尝试使用 class。
当我 运行 代码时,它没有点击正确的东西。它单击 NEXT 按钮。
这是代码 -
By path2 = By.xpath("//android.widget.ImageView[@index='3']");
driver.findElement(path2).click();
Thread.sleep(5000);
有人可以帮忙吗?我是新手,所以我不是很有经验。
因为我看不到整个 XML 我真的不能说你做错了什么,但可能你的 xpath 不正确。 使用 UIAutomatorViewer,您可以保存 XML,然后您可以在其上测试您的 xpath。使用 XMLSpy 或像 https://www.freeformatter.com/xpath-tester.html 这样的在线工具。
可能还有更多 android.widget.ImageView 索引 = 3,我认为 appium 选择了第一个?因此,您可以将 xpath 更改为更独特的,例如:
//android.widget.FrameLayout//android.widget.LinearLayout//android.widget.ImageView[@index='3']"
基于 UIAutomator Viewer 屏幕,您还可以使用 content-desc
,如下所示
By path2 = By.xpath("//android.widget.ImageView[contains(@content-desc,'Message')]");
driver.findElement(path2).click();