第1步,了解Appium 服務關鍵字
文檔地址:https://github.com/appium/appium/blob/master/docs/cn/writing-running-appium/caps.md
第2步,在python安裝相應的模塊
1、appium-python-client
2、selenium
第3步,編寫腳本
- iOS App啟動腳本
通過desired_caps字典傳遞啟動的client的信息,具體參數可以參考文檔:Appium 服務器初始化參數(Capability)
# -*- coding: UTF-8 -*- from time import sleep from selenium import webdriver import os desired_caps = {} desired_caps['automationName'] = 'XCUITest' # Xcode8.2以上無UIAutomation,需使用XCUITest desired_caps['platformName'] = 'iOS' #系統平台 desired_caps['platformVersion'] = '10.2' #系統版本 desired_caps['deviceName'] = 'iPhone 6' #機型名稱 desired_caps['bundleId'] = 'App的bundleID' #App的bundleID desired_caps['wdaLocalPort'] = '8100' #指定不同的端口,如8100,8900 以此參數實現多設備執行,不指定時默認為8100 # desired_caps['app']= os.path.abspath('/XXX/XXX.app') #使用此參數時,無需使用bundleID;會卸載原有的包,安裝指定路徑的app desired_caps['udid'] = '設備udid' # desired_caps['webDriverAgentUrl']='http://10.1.18.172:8100/' #url為XCTRunner啟動后,給出的ServerURLHere->http://10.1.18.172:8100<-ServerURLHere,此行代碼可以不寫 dr = webdriver.Remote('http://127.0.0.1:4723/wd/hub', desired_caps) sleep(5) dr.quit()
注:http://127.0.0.1:4723/wd/hub 為appium 服務地址
第4步,運行腳本
1、終端中啟動appium: appium -a 127.0.0.1 -p 4723
出下以下內容即為成功
[Appium] Welcome to Appium v1.6.4-beta (REV 70b1c6de0b889aabc86b1990c59994e6acb8d726)
[Appium] Non-default server args:
[Appium] address: '127.0.0.1'
[Appium] Appium REST http interface listener started on 127.0.0.1:4723
2、運行python腳本,啟動腳本中的應用為成功
注意事項:
1、因 WebDriverAgentRunner app只能在ios9以上安裝,所以需使用ios9以上設備做真機測試
2、可以使用此方法驗證WebDriverAgentRunner是否可以正常啟用:
終端中啟動webDriverAgentRunner:xcodebuild -project /usr/local/lib/node_modules/appium/node_modules/appium-xcuitest-driver/WebDriverAgent/WebDriverAgent.xcodeproj -scheme WebDriverAgentRunner -destination id=設備udid test
執行前最好將WebDriverAgentRunner的app在手機上刪除,可能會報錯
一般第一次安裝會報錯,可以看一下是否信任了證書后,再次執行命令行,此時可以正確啟動WebDriverAgentRunner了
出現以下內容即為成功:
Test Suite 'All tests' started at 2017-02-13 14:31:59.322 Test Suite 'WebDriverAgentRunner.xctest' started at 2017-02-13 14:31:59.329 Test Suite 'UITestingUITests' started at 2017-02-13 14:31:59.333 Test Case '-[UITestingUITests testRunner]' started. t = 0.01s Start Test at 2017-02-13 14:31:59.342 t = 0.01s Set Up