我正在使用Appium(java)自动化Android应用程序。
我在很多地方进行了搜索,但无法找到下面提到的两个驱动程序之间的确切差异。
AppiumDriver<MobileElement> driver
AndroidDriver driver
它们之间的区别是什么?使用何时以及为何使用?
任何解释/链接/示例都会有所帮助
答案 0 :(得分:3)
Appium和AndroidDriver / iPhoneDriver之间的主要区别在于架构。
AndroidDriver / iPhoneDriver以相同的基本方式工作 - 它们是您在手机上启动的应用程序,用于创建可以使用selenium远程控制的Web视图。这种方法的局限性是:
Appium的工作方式是包装第一方自动化框架(适用于iPhone的UIAutomator和适用于Android的UI Automation / Instrumentation)。
答案 1 :(得分:1)
来自io.appium.java_client.android
public class AndroidDriver<RequiredElementType extends WebElement>
extends AppiumDriver<RequiredElementType> implements AndroidDeviceActionShortcuts,
HasNetworkConnection,PushesFiles, StartsActivity, FindsByAndroidUIAutomator<RequiredElementType> {
AppiumDriver是Android驱动程序的超级驱动程序。所以现在您应该知道,如果您使用的是超级驱动程序,那么您拥有的是什么,如果您使用的是派生驱动程序,那么将会使用它们。
注意:AndroidDriver
和IOSDriver
是针对不同平台派生的,以实现其特定功能,从另一个平台中抽象出来。
虽然这不应该一概而论,但我个人建议使用AppiumDriver以防怀疑使用哪些以及如何访问应用程序中的元素。