IOS自动化—将WDA打包ipa批量安装驱动

打印 上一主题 下一主题

主题 1006|帖子 1006|积分 3018

 
   前面一直没更新技术文章,确实是我懒,但我包管,我会更懒!
  只要没人催更,我可以一直偷偷写成私人条记存本地而不发表 ~
  媒介

CSDN:


  • ios自动化-Xcode、WebDriverAgent情况部署
  • ios获取原生系统应用的包
如果Mac电脑没有设置好Xcode相干情况,可以参考以上文章。
须要条件



  • Mac电脑,OS版本在12.4及以上(低于这个版本无法安装Xcode14,装不了Xcode14就打包不了IOS16的驱动)
  • IOS装备手机,IOS版本在11.0及以上
  • Xcode14.0及以上
  • 公司的IOS开辟者账号(如果是个人账号,只能用七天就要重新打包,这就失去了打包的意义了)
为何做这个

在之前写的IOS自动化教程中,我都是接纳的Mac电脑连接ios装备,使用Xcode一个个举行打包,非常贫困。
就如许忍受了不知道多久,一次偶然的时机,我在sonic官网看到了可以将WebDriverAgent打包成ipa包,直接举行安装,这不就是当年我一直想要做的事变却由于查不到资料而放弃了的事变吗。
由于官网写的比较精简,只有一些下令,于是我打算美满和整合一下具体的操纵步骤。
如许做了之后,只需要拿着ipa包直接举行安装,然后启动WebDriverAgent服务就可以了。
注:ipa包类似于Android端的apk安装包,ipa是ios的安装包后缀格式。
一、下载WebDriverAgent

appium提供的:https://github.com/appium/WebDriverAgent
Airtest提供的:https://github.com/AirtestProject/iOS-Tagent
直接通过git clone下载到Mac电脑本地即可。
二、举行打包WDA.ipa

「查抄当前是否满足前面的须要条件,没满足请先满足,否则后面无法举行或有各种各样的报错!」


  • 确保Mac电脑已经安装了Xcode14.0及以上版本(此处是为了兼容如今最新的ios16装备)
  • 确认ios装备和Mac电脑已经连接(插上数据线就行,弹出信任按钮点击信任即可)
  • 确保Mac电脑有足够的内存,Xcode很大!
1、指定xcode运行路径

启动终端,运行xcodebuild举行查抄设置 , 如果没报错可以举行第2步,有报错跟着我一起办理
  1. (base) QA-IPv6:Downloads avidly$ xcodebuild
  2. xcrun: error: active developer path ("/Applications/Xcode.app/Contents/Developer") does not exist
  3. Use `sudo xcode-select --switch path/to/Xcode.app
  4. ` to specify the Xcode that you wish to use for command line developer tools, or use `xcode-select --install` to install the standalone command line developer tools.
  5. See `man xcode-select` for more details.
复制代码
报错办理一:path does not exist

这里报错的错误日记提醒也非常明显,大意就是说没有找到你的Xcode.app这个路径下的/Contents/Developer这些文件,所以我们要指定一下Xcode.app的路径,这个路径就是你下载Xcode解压之后所放的位置,由于我当初下载的是Xcode-beta14.0版本,所以我就指定的是Xcode-beta.app,可以按需更改这个文件的名字。
而且在日记中给出了办理办法:
  1. sudo xcode-select --switch path/to/Xcode.app
复制代码
用这个下令举行指定你所要使用的Xcode。
「实操指定路径下令」
  1. sudo xcode-select --switch /Users/avidly/Downloads/Xcode-beta.app
复制代码
现实运行结果:


  • 执行的时间要输入暗码,这个暗码是你Mac电脑的暗码
  1. (base) QA-IPv6:Downloads avidly$ sudo xcode-select --switch /Users/avidly/Downloads/Xcode-beta.app
  2. Password:(base) QA-IPv6:Downloads avidly$
复制代码
报错办理二:not contain an Xcode project, workspace or package.

除了第一个报错,我们还可能遇到这个报错
  1. xcodebuild: error: The directory /Users/avidly/Downloads does not contain an Xcode project, workspace or package.
复制代码
这个报错,如果没有从事过xcode开辟或者对xcode不是很熟悉的话,可能不是很清楚他的含义。
这里作为一个外行人,通过本身的实践经验做个说明:
这个报错表示,「当前所运行的文件目录下,没有找到xcode范例的文件项目。」
「办理方案:」


  • 1、打开Xcode,参考我之前的文章,打开对应的WebDriverAgent文件,选好各项设置,填好开辟者账号(公司级别)
  • 2、打开Xcode,File -> Save As Workspace...
  • 3、生存名字可以恣意取,我生存的是xiaozaiTest.xcworkspace
  • 4、将该文件放到和xcode.app同一目录下。

 

 
2、按步骤执行下令

第一步



  • 执行如下下令前,需要cd到第一步中我们生存的xcode项目文件目录下
  1. $ xcodebuild build-for-testing -scheme WebDriverAgentRunner -sdk iphoneos -configuration Release -derivedDataPath /tmp/derivedDataPath
复制代码
「实操截图展示」

 
这里需要等一小会,直到出现「TEST BUILD SUCCEEDED」,就表示乐成了。

 
第二步

执行如下下令
  1. $ cd /tmp/derivedDataPath
  2. $ cd Build/Products/Release-iphoneos
  3. $ mkdir Payload && mv *.app Payload
复制代码

 
第三步

执行如下下令
  1. $ zip -r WDA.ipa Payload
复制代码

 
执行完毕后,你在当前目录下可以看到有个WDA.ipa文件,这就代表我们乐成了。
「这个时间我们就可以离开Mac,直接使用windows操纵了。」
之后也不需要再来xcode举行构建WebDriverAgent了,直接安装这个ipa包即可。

 
三、安装ipa文件

前面我们把ipa文件构建出来了,接下来就是需要举行安装了。
安装ipa文件可以通过iTools,也可以通过其他第三方举行安装,好比我比较保举的是tidevice,它可以使用python编写批量安装,批量启动的脚本,这些我均已在公司落地。
下载tidevice

直接通过pip举行下载,这里我给大家加个速,我本身设置了全局加速,相干文章可以检察我之前写的pip设置全局镜像源。
tidevice的相干下令在之前也有写过,可以举行翻阅
  1. $ pip install tidevice -i https://pypi.tuna.tsinghua.edu.cn/simple
复制代码
安装

「只连接了一台ios装备可以通过如下下令安装」
  1. $ tidevice install WDA.ipa
复制代码
「连接了多台装备可以通过如下下令指定装备安装」
  1. $ tidevice --udid 设备的UDID号 install WDA.ipa
复制代码

 
四、启动WebDriverAgent服务

这个我之前有写过批量启动的文章:
公众号 : python非壅闭模式批量启动ios装备的WebDriverAgent
博客:python批量启动ios装备的WebDriverAgent
这里给一个示列:
  1. tidevice --udid 49687f67a4c70fbd027e19b4a5e40218acdc06e4 xctest -B com.facebook.WebDriverAgentRunnerxzz.xctrunner -e USB_PORT:8118
复制代码


  • --udid : 表示指定装备运行
  • 49687f67a4c70fbd027e19b4a5e40218acdc06e4 :ios装备的udid
  • com.facebook.WebDriverAgentRunnerxzz:xcode打包构建时写的包名
  • USB_PORT:8118 通过8118端口举行连接

 
看到WebDriverAgent start successfully则表示WebDriverAgent服务启动乐成了!
总结

主要下令如下:
  1. $ xcodebuild build-for-testing -scheme WebDriverAgentRunner -sdk iphoneos -configuration Release -derivedDataPath /tmp/derivedDataPath
  2. $ cd /tmp/derivedDataPath
  3. $ cd Build/Products/Release-iphoneos
  4. $ mkdir Payload && mv *.app Payload
  5. $ zip -r WDA.ipa Payload
  6. $ tidevice install WDA.ipa
复制代码
末了: 下方这份完整的软件测试视频学习教程已经整理上传完成,朋侪们如果需要可以自行免费领取【包管100%免费】

 这些资料,对于【软件测试】的朋侪来说应该是最全面最完整的备战堆栈,这个堆栈也陪伴上万个测试工程师们走过最艰难的旅程,希望也能资助到你!
  1. 软件测试技术交流群社:786229024(里面还有工作内推机会,毕竟我们是关系社会。)
复制代码
软件测试口试文档

我们学习肯定是为了找到高薪的工作,下面这些口试题是来自阿里、腾讯、字节等一线互联网大厂最新的口试资料,而且有字节大佬给出了权势巨子的解答,刷完这一套口试资料相信大家都能找到满意的工作。

口试文档获取方式:




免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

半亩花草

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表