java-client 8.0.0 中不存在 MobileElement
Posted
技术标签:
【中文标题】java-client 8.0.0 中不存在 MobileElement【英文标题】:MobileElement not exist in java-client 8.0.0 【发布时间】:2022-01-13 02:55:09 【问题描述】:在遵循本指南后,我找不到导入 MobileElement 代码的方法:https://www.youtube.com/watch?v=i1tQ1pjEFWw&t=1915s&ab_channel=edureka%21 在 Appium 中测试 android。
import org.openqa.selenium.remote.DesiredCapabilities;
import io.appium.java_client.MobileElement;
public class Test
public static void main(String args[])
MobileElement el3 = (MobileElement) driver.findElementById("com.example.calculator:id/button2");
el3.click();
MobileElement el4 = (MobileElement) driver.findElementById("com.example.calculator:id/button5");
el4.click();
MobileElement el5 = (MobileElement) driver.findElementById("com.example.calculator:id/buttonPlus");
el5.click();
MobileElement el6 = (MobileElement) driver.findElementById("com.example.calculator:id/button3");
el6.click();
MobileElement el7 = (MobileElement) driver.findElementById("com.example.calculator:id/button9");
el7.click();
但是记录的代码有MobileElement,所以我通过从这个站点下载库来做同样的事情:http://appium.io/downloads.html。
This is my library which was downloaded from appium.io
但后来,它显示它没有 MobileElement 库,所以我无法导入它。
Cannot resolve symbol 'MobileElement'
是因为代码太旧还是库有我不知道的更新?
【问题讨论】:
【参考方案1】:我也在做同样的事情。我的解决方案是切换到已发布的 java-client,而不是 beta 版本。
implementation files('libs\\java-client-7.6.0.jar')
https://mvnrepository.com/artifact/io.appium/java-client/7.6.0
祝你好运
【讨论】:
正如目前所写,您的答案尚不清楚。请edit 添加其他详细信息,以帮助其他人了解这如何解决所提出的问题。你可以找到更多关于如何写好答案的信息in the help center。【参考方案2】:Appium java-client v8 使用 Selenium4 并引入了许多重大更改。
你可以看这里 https://github.com/appium/java-client/blob/master/docs/v7-to-v8-migration-guide.md#mobileelement.
建议使用 WebElement 接口类型,而不是 MobileElement。
Appium java-client v8 似乎符合 W3C。因此,迁移到新的 API 是迈向未来的一步。至少在最终的 8.0.0 版本之后(现在是测试版)。
【讨论】:
以上是关于java-client 8.0.0 中不存在 MobileElement的主要内容,如果未能解决你的问题,请参考以下文章
向下滚动以查找文本在 android 模拟器中不起作用的元素
Jaeger-Opentracing的Java-client
jaegeropentracing的Java-client完整分布式追踪链