2017-05-13 88 views
0

我是自動化測試的初學者。我正在嘗試爲我的android和ios應用程序編寫通用測試項目。 ios和android上的應用程序都具有幾乎相同的用戶界面和流程。我想知道如何基於該平臺實例化Appium驅動程序。 截至目前,我想有一個布爾變量isAndroid,我必須在運行測試之前在代碼中手動更改。基於isAndroid我將AppiumDriver實例化爲AndroidDriver或IOSDriver,並且元素將根據@AndroidFindby或@ IOSFindBy 當我從終端啓動Appium時,我提到參數platformName,是否有一種方法可以在我的代碼中獲取該信息,以便我不必手動更改isAndroid變量,並且在兩個平臺上運行完全相同的測試代碼。如何實例化基於平臺的Appium驅動程序?

回答

0

你能夠嘗試一個平臺,捕捉異常,然後嘗試其他?

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) 

否則,你就需要使用一些外部方法來查看連接什麼設備(androidios)。

相關問題