Перейти к содержимому

Фотография

Один код для обеих платформ - android & IOS


  • Авторизуйтесь для ответа в теме
Сообщений в теме: 2

#1 ioniamichael

ioniamichael

    Новый участник

  • Members
  • Pip
  • 1 сообщений
  • ФИО:Ionia Michael

Отправлено 04 августа 2019 - 13:35

Здравствуйте друзья .
В первые мне нужно написать авто тесты для приложения написаного в React Native.
Мне нужно написать код который будет работать для обеих платформ используя Java и JUnit.
 
Написал две функции, первая держит DesiredCapabilities для Android, вторая для IOS.
Каждая возвращает новый драйвер :
для Андроид - return driver = new AndroidDriver(new URL("http://0.0.0.0:4723/wd/hub"), cap);
и для IOS - return driver = new IOSDriver(new URL("http://0.0.0.0:4723/wd/hub"), cap);
 
Тепер вопрос.
Допустим я подключу физический дивайс к компьютеру , не важно андроид или IOS, 
Как перед запуском все тестов "Run All Tests" сделать проверку какой дивайс подключен?
 
Не разу не работал с двумя драйверами и инфу не нашел в инете .
 
Вот код :
 
AppiumDriver driver;


public AppiumDriver getAndroidDriver() throws MalformedURLException {

DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "dac0bec9");
cap.setCapability("platformName", "Android");
cap.setCapability("platformVersion", "9");
cap.setCapability("appPackage", "");
cap.setCapability("appActivity", "");
cap.setCapability(MobileCapabilityType.BROWSER_NAME, "");
cap.setCapability("automationName", "UiAutomator2");
cap.setCapability(AndroidMobileCapabilityType.AUTO_GRANT_PERMISSIONS, true);
cap.setCapability(MobileCapabilityType.NO_RESET, true);
cap.setCapability(MobileCapabilityType.FULL_RESET, false);

return driver = new AndroidDriver(new URL("http://0.0.0.0:4723/wd/hub"), cap);
}

public AppiumDriver getIOSDriver() throws MalformedURLException {

DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.PLATFORM_VERSION, "9.3");
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone 6");
cap.setCapability(MobileCapabilityType.AUTOMATION_NAME, "XCUITEST");
cap.setCapability(MobileCapabilityType.BROWSER_NAME, "");
cap.setCapability(MobileCapabilityType.UDID, "");


return driver = new IOSDriver(new URL("http://0.0.0.0:4723/wd/hub"), cap);

}

 


  • 0

#2 Spock

Spock

    Профессионал

  • Members
  • PipPipPipPipPipPip
  • 1 772 сообщений
  • ФИО:Роман

Отправлено 04 августа 2019 - 16:32

а Вы уверены что надо именно е2е тесты на Аппиуме писать?

 

может там скорее всего нужны компонентные тесты, там и платформа не важна будет?


  • 0

#3 BabyRoot

BabyRoot

    Специалист

  • Members
  • PipPipPipPipPip
  • 833 сообщений


Отправлено 05 августа 2019 - 09:38

Ну, подключенное Андройд устройство можно найти через команду

adb devices

https://developer.an...ommand-line/adb

 

Надо гуглить что xCode даёт для работы с айфонами.


  • 0


Количество пользователей, читающих эту тему: 0

0 пользователей, 0 гостей, 0 анонимных