Я новичок в автоматическом тестировании. Я пытаюсь написать общий тестовый проект для своего приложения для Android и iOS. Оба приложения на ios и android имеют почти одинаковый интерфейс и последовательность операций. Я хочу знать, как создать экземпляр драйвера Appium для платформы. На данный момент я думаю иметь логическую переменную isAndroid, которую мне пришлось бы вручную изменить в коде перед запуском тестов. На основе isAndroid я создаю экземпляр AppiumDriver для AndroidDriver или IOSDriver, и элементы будут расположены в соответствии с @AndroidFindby или @IOSFindBy Когда я запускаю Appium с терминала, я упоминаю параметр platformName, есть ли способ получить эту информацию в моем коде, чтобы мне не приходилось вручную изменять переменную isAndroid, и точно такой же тестовый код запускается на обе платформы.
Как создать экземпляр драйвера Appium на основе платформы?
Ответы (1)
Можете ли вы попробовать одну платформу, поймать исключение, а затем попробовать другую?
try:
driver = webdriver.Remote('http://localhost:4723/wd/hub', ios_caps)
run_iOS_tests(driver)
except selenium.common.exceptions.WebDriverException:
driver = webdriver.Remote('http://localhost:4723/wd/hub', android_caps)
run_android_tests(driver)
В противном случае вам нужно будет использовать какой-либо внешний метод, чтобы узнать, какие устройства подключены (android, iOS).
person
import random
schedule
16.05.2017