您好,登錄后才能下訂單哦!
本篇內容介紹了“Python自動化工具tidevice的安裝和使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
最近,阿里內部開源了一個 iOS 端由 Python 編寫的自動化工具,即:tidevice
它是一款跨平臺的自動化開源工具,不依賴 Xcode 就可以啟動 WebDriverAgent( WDA ),這也就意味著 Windows 可以直接運行 iOS 自動化腳本
項目地址:
https://github.com/alibaba/taobao-iphone-device
進入到虛擬環境,先安裝 tidevice 的依賴包
# 安裝依賴包 pip3 install -U "tidevice[openssl]" # 查看tidevice版本,檢查是否安裝成功 tidevice version
將 iPhone 設備連接到電腦上,就可以使用 tidevice 提供的功能了
3-1 查看設備列表
# 二選一 tidevice list # json數據顯示 tidevice list --json
3-2 安裝、卸載應用
安裝對應的關鍵字為:「 install 」
tidevice 同時支持安裝本地 ipa 包和遠鏈下的 ipa 應用包
另外,tidevice 可以使用「 --udid 」參數將應用安裝到某一臺設備中
# 安裝本地應用 tidevice install example.ipa # 根據udid參數,指定設備安裝應用 tidevice --udid $UDID install https://example.org/example.ipa tidevice install https://.....ipa
卸載對應的關鍵字為:「 uninstall 」
通過應用包名可以卸載設備上的某一個應用
# 卸載應用(通過包名) # 比如:知識星球App包名為:com.unnoo.quan tidevice uninstall com.unnoo.quan
3-3 啟動、關閉應用
啟動應用對應的關鍵字為:「 launch 」
關閉應用對應的關鍵字為:「 kill 」
# 打開應用 tidevice launch com.unnoo.quan # 停止殺死應用 tidevice kill com.unnoo.quan
3-4 已安裝應用及名稱、版本
使用「 tidevice applist 」命令,可以查看設備上已經安裝的應用、應用名稱、應用版本號
# 查看設備應用信息列表 localhost:tidevice_demo xingag$ tidevice applist com.tencent.xin WeChat 8.0.2 com.ss.iphone.ugc.Aweme 抖音 13.4.0 com.tencent.mttlite QQ瀏覽器 10.8.3 com.panasonic.jp.imageapp Image App 1.10.17 com.unnoo.quan 知識星球 4.20.2 co.visualsupply.cam VSCO 189 com.ucweb.iphone.lowversion UC瀏覽器 13.1.5 com.niksoftware.snapseedforipad Snapseed 2.19.5 com.autonavi.amap 高德地圖 10.76.0 com.lagou.education 拉勾教育 1.4.9 com.xunmeng.pinduoduo 拼多多 5.37.0 com.tencent.QQMusic QQ音樂 10.5.5 io.ideamp.feelcab Feelca B 1.6.0 com.chinaunicom.mobilebusiness 手機營業廳 8.00.01 com.feiyu-tech.vico Vicool 1.2.26 com.ss.iphone.article.News 今日頭條 7.9.3 com.sogou.sogouinput 搜狗輸入法 10.18.1 org.geekbang.GeekTime 極客時間 2.9.2 com.burbn.hyperlapse Hyperlapse 1.3.4 com.apple.itunesu iTunes U 3.8
3-5 設備信息
利用「 tidevice info 」可以查看設備信息,比如:設備序列號、系統版本、CPU、本機號碼、時間戳、藍牙地址、MAC 地址等信息
# 查看設備信息 localhost:~ xingag$ tidevice info MarketName: iPhone SE (1st generation) DeviceName: xingag ProductVersion: 14.4 ProductType: iPhone8,4 ModelNumber: MP892 SerialNumber: ... CPUArchitecture: arm64 ProductName: iPhone OS ProtocolVersion: 2 RegionInfo: ZP/A TimeIntervalSince1970: 1616979424.235399 TimeZone: Asia/Shanghai WiFiAddress: 58:e2:8f:68:4c:b0 BluetoothAddress: 58:e2:8f:68:4c:b1 BasebandVersion: 10.40.01 ...
如果要查看設備的電池信息,可以使用關鍵字 「 --domain + 應用包名 」來獲取
# 查看設備電池信息 localhost:~ xingag$ tidevice info --domain com.apple.mobile.battery --json { "BatteryCurrentCapacity": 54, "BatteryIsCharging": true, "ExternalChargeCapable": true, "ExternalConnected": true, "FullyCharged": false, "GasGaugeCapability": true, "HasBattery": true }
3-6 重啟及截圖
重啟對應的關鍵字為:「 reboot 」
截圖對應的關鍵字為:「 screenshot 」
# 重啟設備 tidevice reboot # 截圖并保存到文件 screenshot.jpg 中 tidevice screenshot screenshot.jpg
3-7 系統日志及更多幫助
查看系統日志的命令為:「 tidevice syslog 」,當然也可以配置 grep 參數進行過濾
# 查看系統日志 tidevice syslog # 更多幫助 tidevice -h
要完成 iOS 端的自動化,我們還需要做一些準備工作
4-1 安裝 WDA
我們需要將 WebDriverAgent 安裝到 iOS 設備上,通過它驅動手機進行一系列自動化操作
PS:由于 Facebook WDA 很長時間沒有更新了,這里建議直接使用 Appium WDA
https://github.com/appium/WebDriverAgent
下載項目后,使用 Xcode 打開,Scheme 選擇 WebDriverAgentRunner,設備選擇真機
然后配置開發者證書,可以參考下面鏈接進行配置
https://testerhome.com/topics/7220
最后,Xcode 選擇 Project 下的 Test 將項目運行到真機設備上
注意:第一次運行 WDA 可能運行失敗,需要手動在設置中對證書添加信任
4-2 運行 WDA
真機設備安裝完 WDA 后,就可以脫離 Mac,使用 Windows 進行自動化操作了
使用「 tidevice wdaproxy 」命令可以運行 WDA 和端口轉發
# 運行 WDA # 端口轉發到8100 # 應用包名:com.facebook.WebDriverAgentRunner.xingag23.xctrunner idevice wdaproxy -B com.facebook.WebDriverAgentRunner.xingag23.xctrunner --port 8100
PS:由于 Xcode 設置證書的時候,更改過 bundle_id,所以這里的包名是一個變量
4-3 編寫自動化腳本
接下來,就可以使用 Appium 或 facebook-wda 編寫腳本并運行到 iOS 設備上了
以 facebook-wda 為例
首先,我們安裝對應的依賴
# 安裝facebook-wda依賴 pip3 install -U facebook-wda
接著,編寫自動化腳本并運行測試
import wda import time # 連接設備 c1 = wda.USBClient() # c1 = wda.Client("http://10.3.209.175:8100") print(c.info) # 極客時間 bundle_id = 'org.geekbang.GeekTime' # 通過app的bundleId啟動App s = c1.session(bundle_id) # 休眠5s s.sleep(5) # 截圖保存到本地 c1.screenshot('sc.png') # 回到桌面 s.home()
阿里這款 iOS 端自動化工具的主要優點是啟動速度快,內存占用低;更重要的是,它是跨平臺,穩定性相對較高
“Python自動化工具tidevice的安裝和使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。