App测试之ios避坑(Windows、Mac、Linux)

前言


目前,手机测试中App应用测试越演越烈。安卓由于系统开源,因此在APP自动化测试难度上相对低,ios系统资源有所限制。因此,在ios设备上进行自动化测试会面临无权限安装测试工具到ios设备上。

测试工具


tidevice是阿里的内部的一个小组用来做 iOS 自动化用的工具。这个工具是纯 Python 写成的,所以也是跨平台的。也就是可以在能跑起来 Python 的 Windows、Linux、Mac 上运行。但是,前提是手机已安装WebDriverAgent,并启动该服务,否则,无法使用。

提醒:
Windows:****下启动tidevice务必安装iTunes/爱思助手等工具连接设备后再进行调试
Linux/Ubuntu:安装libimobiledevice即可连接设备进行调试(待排雷)

weditor是编辑器能够提供辅助编写脚本,查看组件信息,调试代码等功能。
atxserver2-ios-provider 该项目基于WDA在ios设备上启动服务,然后,通过Weditor或其他工具进行调试运行。

总结上述工具,必须在手机上安装WDA(WebDriverAgent)才能正常使用。

WebDriverAgent安装


该方法是个人开发者权限下进行调试使用,因此,证书有效时间短,并且需要修改BundleID方式进行构建应用。

前期准备

需要设备:Mac OS(可通过虚拟机安装黑苹果)
编译工具:Xcode 10.0+

step1.拉取代码仓

从Appium或WebDriverAgent代码仓中拉取部署

git clone https://github.com/appium/WebDriverAgent.git

step2.修改WebDriverAgent

使用Xcode打开WebDriverAgent文件中的WebDriverAgent.xcodeproj


修改项目组织信息

如何免费获得个人开发者注册

目前,根据官方最新的会员制度说明,没有免费的个人开发者注册通道。

位于符合资格地区的非营利组织、取得认可的教育机构和政府机构,如计划仅在 App Store 上发布免费 app,则可申请豁免其 Apple Developer Program 会员资格年费。Apple 将审核您的请求,并会联系您以告知请求是否获批。
符合资格的地区:澳大利亚、巴西、加拿大、中国大陆、法国、德国、以色列、意大利、日本、墨西哥、韩国、英国以及美国。


根据上述内容得知,没有个人开发者将影响App无法发布。在我们的日常测试工作上,我们很少涉及测试App发布(这是测试开发攻城狮可能需要用到)。BTW,每一个Apple ID都是一个未激活的开发者,因此,只需登录你的Apple ID,就能在项目中生成一个有效期为7天的证书。
因此,我们能通过这个方式进行操作。

Failed to register bundle identifier错误提示

证书问题

解决方法在step3

No profiles for 'com.facebook.WebDriverAgentRunner.xxx' were found

给这个App的起个唯一的名


step3.证书设置

首先,确保你的apple账号已在apple developer上注册了(目前,只能在app上注册,尽量不要把自己的账号登录到测试机上注册,这容易注册失败,而且失败后无法恢复)
若不想付费,可跳过上述一步
点击Xcode-Preferences



进入界面生成证书-填写你在项目中需要用到的Apple ID,并点击右下方的Manage Certificatest,进入界面添加Apple Development证书即可


step4.电脑连接手机Run一下即可

Windows上使用WDA控制iphone


1.应用商店上下载iTunes或爱思助手
2.pip安装tidevice
3.通过tidevice启动wda

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容