2016-08-25 5 views
0

для автоматизации андроида приложения я использую AppiumDriverЧто касается водителей в мобильной автоматизации приложений

AppiumDriver driver = new AppiumDriver(new URL("http://localhost:5555/wd/hub"), capabilities); 

я нашел в Интернете, используя RemoteWebDriver

RemoteWebDriver driver = new RemoteWebDriver(new URL("http://localhost:5555/wd/hub"), capabilities); 

Есть ли необходимость в использовании различных драйверов. Если да, для приложения автоматизации iOS, какой драйвер мне нужно использовать?

ответ

1

Существует множество возможностей для использования какого-либо драйвера, и разница в том, какие функции конкретной платформы вы хотите иметь.

Для Android наиболее конкретным драйвером будет AndroidDriver. AndroidDriver расширяет AppiumDriver (тот, который вы используете сейчас), и AppiumDriver расширяет RemoteWebDriver. Другими словами, RemoteWebDriver имеет наименьшие функции и продвигается на один уровень с драйвером.

Java-клиента AndroidDriver: 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>

+0

Можем ли мы использовать AppiumDriver с вне или

+1

Некоторые тип элемента всегда используется. Если вы не определяете его, WebElement будет использоваться по умолчанию. Вы можете использовать WebElements в автоматизации приложений Android/iOS просто отлично, но с меньшими возможностями для управления элементами. – Domestus