尝试window系统下使用tidevice连接ios设备
一般来说搞iOS手机的APP自动化需通过Mac电脑,但当前APP出图自动化测试平台是基于windows系统环境开发。如果因iOS APP需要再重新搭建Mac的开发及测试环境,会很大程度上浪费资源,增加开发、维护的难度。因此,经多方预研究发现阿里开源的用python编写的tidevice可以跨平台实现iOS自动化,今天我们就一起来学习、揭秘tidevice。
一、环境
1、安装python
需要python3.6以上版本,以下以3.7.1为例子。
ps:window7以不支持3.7.1以上设备。
2、安装pip
cmd命令下运行:python -m pip install --upgrade pip
失效的话用这个:
pip install pip -U -i https://mirrors.aliyun.com/pypi/simple/
(通过修改pip的默认镜像源来加快pip的下载速度,从而减少连接超时等问题。以阿里云镜像源为例,我们可以使用以下命令来修改pip镜像源:)
检查是否安装成功:pip list
3、安装tidevice
cmd命令下运行:pip3 install -U "tidevice[openssl]"
检查是否安装成功:tidevice version 或 tidevice -v
4、查看iphone设备
cmd命令下运行:tidevice list
cmd命令下运行:tidevice list --json
5、插上 iOS 设备
命令查看所有连接上的设备命令(有设备 udid 信息返回即正常)
tidevice list
查看个人设备上已安装 wda 的 bundleId
tidevice applist
4.命令启动 wda(这一步需要查看WDA安装步骤)
tidevice -u(设备 udid)wdaproxy -B(wda 的 bundleId) --port 8100
二、相关操作
列出连接设备:tidevice list
应用管理:
# 安装应用
$ tidevice install ezview.ipa
# 指定设备安装
$ tidevice --udid $UDID install https://example.org/example.ipa
# 卸载应用
$ tidevice uninstall com.uniview.app.smb.phone.ezview
# 启动应用
$ tidevice launch com.uniview.app.smb.phone.ezview
# 停止应用
$ tidevice kill com.uniview.app.smb.phone.ezview
# 查看已安装应用
$ tidevice applist
# 查看运行中的应用
$ tidevice ps
$ tidevice ps --json output as json
查看设备信息:tidevice info
各xcode版本对应支持的ios系统对比图