Существует несколько вариантов того, какой драйвер использовать, и разница заключается в том, сколько специфичных для платформы функций вы хотите иметь.
Для Android наиболее подходящим драйвером будет AndroidDriver. AndroidDriver расширяет AppiumDriver (тот, который вы используете прямо сейчас), а AppiumDriver расширяет RemoteWebDriver. Другими словами, RemoteWebDriver имеет наименьшее количество функций, а переход на один уровень вперед с помощью драйвера дает больше возможностей.
AndroidDriver Java-клиента: http://appium.github.io/java-client/io/appium/java_client/android/AndroidDriver.html
Наследование AndroidDriver, как показано на странице документации API:
java.lang.Object
org.openqa.selenium.remote.RemoteWebDriver
io.appium.java_client.AppiumDriver<T>
io.appium.java_client.android.AndroidDriver<T>
Обратите внимание, что AppiumDriver и AndroidDriver включают ‹T›, что позволяет вам выбрать, какой тип MobileElements вы используете. Чтобы получить доступ ко всем специфичным для Android функциям драйвера, вы можете определить ‹T› как ‹AndroidElement›: http://appium.github.io/java-client/io/appium/java_client/android/AndroidElement.html
Наследование AndroidElement:
java.lang.Object
org.openqa.selenium.remote.RemoteWebElement
io.appium.java_client.MobileElement
io.appium.java_client.android.AndroidElement
iOS имеет аналогичный IOSDriver: http://appium.github.io/java-client/io/appium/java_client/ios/IOSDriver.html С наследованием:
java.lang.Object
org.openqa.selenium.remote.RemoteWebDriver
io.appium.java_client.AppiumDriver<T>
io.appium.java_client.ios.IOSDriver<T>
Во многих случаях достаточно просто использовать AppiumDriver вместе с ‹WebElement› (используется по умолчанию) или ‹MobileElement›.
person
Domestus
schedule
25.08.2016