впервые мне нужно настроить автоматизацию приложения React-native. Приложение разработано для двух ОС: Android и IOS.
Вопрос в том, как получить текущую ОС, которая работает сейчас на устройстве, и установить соответствующий драйвер.
Например: я подключил устройство с операционной системой IOS, нажал кнопку «Выполнить все тесты», и соответствующий драйвер заработал.
Я установил два драйвера типа AppiumDriver, один из которых возвращает драйвер операционной системы Android, а другой - IOS.
Драйвер AppiumDriver; URL appiumUrl = новый URL ("http://0.0.0.0:4723/wd/hub ");
public DriverSettings() throws MalformedURLException {
}
public AppiumDriver getAndroidDriver() {
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.PLATFORM_VERSION, "**TBD**");
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "**TBD**");
cap.setCapability(MobileCapabilityType.APP, appUrl);
cap.setCapability(AndroidMobileCapabilityType.NO_SIGN, true);
cap.setCapability(AndroidMobileCapabilityType.UNICODE_KEYBOARD, true); //set unicodekeyboard in order to support umlauts
cap.setCapability(AndroidMobileCapabilityType.RESET_KEYBOARD, true); //reset keyboard after tests
cap.setCapability(AndroidMobileCapabilityType.IGNORE_UNIMPORTANT_VIEWS, true); //speeds up tests, as views that are not important i.e. for accessiblity are not shown on android. Is disabled on demand in tests using driver.ignoreunimporantViews
return driver = new AndroidDriver(appiumUrl, cap);
}
public AppiumDriver getIOSDriver() {
DesiredCapabilities cap = new DesiredCapabilities();
cap.setCapability(MobileCapabilityType.PLATFORM_VERSION, "9.3");
cap.setCapability(MobileCapabilityType.DEVICE_NAME, "iPhone 6");
cap.setCapability(MobileCapabilityType.APP, appUrl);
return driver = new IOSDriver(appiumUrl, cap);
}
Итак, как их проверить, прежде чем я проведу все тесты?