前言
前段時間阿里開源了1個用來做iOS自動化的工具-- tidevice ,官稱該工具能實現不依賴 xcode 啟動 WebDriverAgent 完成設備連接。
Airtest小組肯定不能錯過這么有趣的工具拉!一頓體驗下來,發現真的很香!!!這下子同學們不用非得使用Mac掛着xcode,用Windows也可以啟動蘋果上的 WebDriverAgent 了。
話不多說,今天我們就一起來看看,如何結合 tidevice 工具和Windows平台上的AirtestIDE進行iOS自動化。
准備工作
1)安裝tidevice庫
在本地python環境中,使用 pip install tidevice
命令安裝 tidevice 庫。
需要注意的是,目前 tidevice 庫僅支持安裝在python3.7及以上版本中。
2)常用的tidevice命令
查看已連接設備:
tidevice list
查看設備上的第三方應用包名:
tidevice applist
指定設備安裝:
# $UDID可以使用tidevice list命令查看
tidevice -u $UDID install D:/test.ipa
# 或者
tidevice -u $UDID install https://example.org/example.ipa
更多詳細的功能可以查看 tidevice 的github文檔:https://github.com/alibaba/taobao-iphone-device 。
3)確保手機上已經安裝上WebDriverAgent
對於未跑過自動化的iOS設備,我們需要先檢查設備上是否安裝好了WebDriverAgent這個APP,如未安裝,則可以通過以下2種方式安裝:
① 將iOS設備與一台Mac連接,然后使用xcode編譯源碼安裝,成功安裝WebDriverAgent即可脫離Mac;
② 使用tidevice的安裝命令,將開發者證書重簽名的 WebDriverAgent.ipa 安裝到iOS設備上。
在IDE連接tidevice啟動的iOS
1)用數據線將iOS設備與Windows電腦連接
2)查看設備里WebDriverAgent的BundleID
tidevice applist
3)指定BundleID啟動
tidevice xctest -B com.gameappium.WebDriverAgentRunner.xctrunner
4)在IDE的設備連接窗口連接iOS設備
打開最新版的IDE(1.2.8版本),在連接iOS設備框中輸入:
# DeviceIdentifier可以在啟動的信息中查看
http+usbmux://DeviceIdentifier
最后點擊連接即可:
此時即可在IDE中實時看到iOS的設備畫面,並且對該設備進行自動化測試:
5)補充另一種啟動方式
tidevice wdaproxy -B com.gameappium.WebDriverAgentRunner.xctrunner --port 8200
與步驟3)中的xctest啟動方式不同的是,使用wdaproxy啟動之后,我們可以在瀏覽器中使用http://localhost:8200/status來訪問到這個iOS:
Airtest官網:http://airtest.netease.com/
Airtest教程官網:https://airtest.doc.io.netease.com/
搭建企業私有雲服務:https://airlab.163.com/b2b
官方答疑 Q 群:654700783
呀,這么認真都看到這里啦,幫忙點個推薦支持一下唄,灰常感謝~