Windows平台实现 iOS 压测自动化

一、简介

tidevice(类似安卓adb命令),用来做iOS自动化的工具,不用必须使用Mac挂着xcode,用Windows也可以启动苹果上的 WebDriverAgent 了。

tidevice 的github文档:https://github.com/alibaba/taobao-iphone-device

二、使用方法

在本地python环境中,使用pip install tidevice命令安装 tidevice 库。(仅支持python3.7及以上版本)

使用tidevice时,需要提前安装iTunes,并连接手机

注意:打开代理的情况(charles、Fiddler)会下载失败,关闭后重新下载即可

图示


三、常用命令

#查看所有连接上的设备:

$tidevice list

图示

#截图:

tidevice screenshot screenshot.jpg


图示

#启动苹果设置:--手机会自动打开设置界面

tidevice launch com.apple.Preferences


图示

#查看已安装的第三方应用

tidevice applist


图示

指定设备安装:

# $UDID可以使用tidevice list命令查看

tidevice -u $UDID  install D:/test.ipa


图示

四、自动化压测

难点:手机安装WebDriverAgent

确保手机上已经安装上WebDriverAgent

对于未跑过自动化的iOS设备,需要先检查设备上是否安装好了WebDriverAgent这个APP,如未安装,则可以通过以下2种方式安装:

① 将iOS设备与一台Mac连接,然后使用xcode编译源码安装,成功安装WebDriverAgent即可脱离Mac;

安装方法参考:https://testerhome.com/topics/7220

② 使用tidevice的安装命令,将开发者证书重签名的 WebDriverAgent.ipa 安装到iOS设备上。

注意点:

    部署iOS测试平台需要苹果开发者证书,现在使用个人Apple ID登陆即可,不需要另外注册付费开发者账号

    个人版的免费证书,每隔7天左右,要手动更新开发者证书;

    需要手动的在iPhone中选择信任证书,通用->设备管理->选择信任;

    最多支持3台设备;

建议:使用公司的企业账号或个人收费账号测试(企业账号可以绑定100台也不需要更新证书)

安装成功之后查看:


图示


压测方法1:使用uiautomator2实现压测自动化

#使用wdaproxy启动服务

# tidevice wdaproxy -B com.facebook.wda.WebDriverAgent.Runner --port 8100 (端口号可以随意写)

idevice -u  设备号 wdaproxy -B com.yummy1.WebDriverAgentRunner.xctrunner --port 8100

启动成功后会提示:WebDriverAgent start successfully


图示

#启动后自动打开uiautomator2

python -m weditor


图示


图示


图示

#访问这台ios设备信息

使用wdaproxy启动之后,可以在浏览器中使用http://localhost:8100/status来访问到这个iOS:


图示


压测方法2:使用IDE连接tidevice启动iOS

#查看设备里WebDriverAgent的BundleID

tidevice applist

指定BundleID启动:

tidevice xctest -B com.yummy1.WebDriverAgentRunner.xctrunner


图示

#在IDE的设备连接窗口连接iOS设备

打开最新版的IDE,在连接iOS设备框中输入:

AirtestIDE工具官网安装下载:https://www.cnblogs.com/zhu520/p/11389467.html

# DeviceIdentifier可以在启动的信息中查看

http+usbmux://DeviceIdentifier

eg:http+usbmux://设备号

图示
图示

此时即可在IDE中实时看到iOS的设备画面,并且对该设备进行自动化测试:

图示

你可能感兴趣的:(Windows平台实现 iOS 压测自动化)