Appium Android 如何使用 TEXT 值进行点击

Var*_*ali 6 java android appium

我想通过让 Appium 点击歌曲名称来播放歌曲。是否有代码可以允许我使用文本字段点击任何元素?我不能在这里使用资源 ID 字段,因为稍后会有多首歌曲。我尝试使用By.xpath("//android.widget.EditText[@text='"+song name+"']");但没有用。

在此输入图像描述

Var*_*ali 6

找到了解决方案。我必须在测试中编写以下代码:

capabilities.setCapability(MobileCapabilityType.AUTOMATION_NAME, AutomationName.ANDROID_UIAUTOMATOR2);
Run Code Online (Sandbox Code Playgroud)

现在我可以通过在 XPath 中写入该歌曲名称来使用 TEXT 值,如下所示:

By.xpath("//*[@text='" + element + "']");
Run Code Online (Sandbox Code Playgroud)

这里的元素是 UIAutomatiorViewer 中显示的文本值。


bsk*_*bsk 5

您在 xpath 中的类名错误。

根据我在 uiautomatorviewer 上看到的内容,应该是以下内容

By.xpath("//android.widget.TextView[@text='"+songname+"']");
Run Code Online (Sandbox Code Playgroud)