[英]Questions on Appium Automation on Android
1.App没有任何Content-desc,在这种情况下我应该使用什么? 调用元素ex:有一个按钮,当我从UIautomator工具检查元素时需要点击该按钮,它在content-desc中没有任何内容,还有什么我可以认为是识别该元素的最佳方法
例如:Resource-id:au.com.carsguide:id / search_btn Content-desc-空白
如果我使用Resource-id,appium不会选择该值,它只能是“ search_btn”,然后它将选择该值,为什么完整的程序包名称不支持resource-id?
3.我能够在实际设备上运行appium自动化,有谁能帮助我在android仿真器上运行自动化? 怎么做?
使用AndroidDriver时看到以下错误:
FAILED CONFIGURATION: @BeforeClass setUpBeforeClass
java.lang.Error: Unresolved compilation problems:
The return types are incompatible for the inherited methods FindsByAccessibilityId<WebElement>.findElementsByAccessibilityId(String), AppiumDriver<RequiredElementType>.findElementsByAccessibilityId(String)
The return types are incompatible for the inherited methods FindsByCssSelector.findElementsByCssSelector(String), AppiumDriver<RequiredElementType>.findElementsByCssSelector(String)
The return types are incompatible for the inherited methods WebDriver.findElements(By), AppiumDriver<RequiredElementType>.findElements(By)
The return types are incompatible for the inherited methods FindsById.findElementsById(String), AppiumDriver<RequiredElementType>.findElementsById(String)
The return types are incompatible for the inherited methods FindsByLinkText.findElementsByLinkText(String), AppiumDriver<RequiredElementType>.findElementsByLinkText(String)
The return types are incompatible for the inherited methods FindsByXPath.findElementsByXPath(String), AppiumDriver<RequiredElementType>.findElementsByXPath(String)
The return types are incompatible for the inherited methods FindsByName.findElementsByName(String), AppiumDriver<RequiredElementType>.findElementsByName(String)
The return types are incompatible for the inherited methods FindsByTagName.findElementsByTagName(String), AppiumDriver<RequiredElementType>.findElementsByTagName(String)
The return types are incompatible for the inherited methods FindsByLinkText.findElementsByPartialLinkText(String), AppiumDriver<RequiredElementType>.findElementsByPartialLinkText(String)
少即是好。 为什么要使用包名访问ID? 顺便说一下,您已经在功能中指定了程序包名称,因此appium在内部使用ID和程序包名称来查找应用程序组件。 如果组件属于其他应用程序,则需要提供ID及其包名称。
您无需运行Selenium服务器,而需要运行Appium Server。 AndroidDriver扩展了抽象AppiumDriver,它又扩展了DefaultGenericMobileDriver(这也是抽象的),该抽象类扩展了RemoteWebDriver。
因此,AndroidDriver比RemoteWebDriver具有更多的API /功能。 因此,您可以选择AndroidDriver。
adb devices
以获取模拟器ID 192.168.56.101:5555
用于deviceName
和udid
appium功能
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.