最近在学习,ios 的自动化测试。想用 facebook-wda 框架,但是没有 mac 电脑,大佬还知道有什么方法不使用 mac 电脑装 wda 吗?
主要是 wda 要重新签名打包,必须要 xcode,但是完成这个操作以后,就可以脱离 mac 了
你是云丁的嘛?
装个黑苹果
可能说法不一样,我意思是说 wda 工程需要 xcode 来编译成 ipa 包
你如果手里有已经安装好 wda 工程的手机的话,其实可以不用 mac 了,你直接用 tidevice 就可以启动了。tidevice 支持三平台 windows linux mac
临时用的话,可以找开发帮你装一个,你后面就可以用了。
但如果要深入,还是建议你想办法搞个苹果系统,黑苹果也可以。ios 自动化深入点的话,还是离不开 xcode 。
是的,只是觉得每次使用都需要 xcode 进行编译,在找有没有不需要 windows 就能进行 ios 自动化的路子。在网上看到 sideLoadly 可以将安装包安装到手机上,就在想如果存在一个 wda 包,那就不需要 xcode 编译,windows 电脑可以直接安装包就 OK
在 ios 系统限制下,除了 appstore 以及企业证书签名包(现在已经很难买到企业证书了),没有包是可以安装到任意手机的,都需要先把手机信息登记到开发者证书,然后用这个证书给安装包进行签名,认证这个包在这个手机上跑,是经过开发者和手机拥有者确认的。
由于这个机制的存在,意味着你就算找到了一个已经编译好的 wda 安装包(网上确实有这样的,有的开源项目自带的单测里有记录这个包,比如这个地方),也必须重签名才能安装到你的手机上,否则会在安装时由于 ios 系统限制直接不允许安装。至于重签名是否有 windows 版工具可用,我暂时没有见到。
另外:
1、windows 安装 ipa 到手机上,tidevice 也支持,tidevice install xx.ipa
就可以。如果不清楚 tidevice 的可以百度一下。
2、wda 不需要每次使用都编译的,使用的时候用 tidevice 启动手机里装好的 wda 就可以了,只有首次安装的时候,如果没有编译过需要编译。如果你手上有已经签名好的 wda ipa 包,也是可以直接不编译直接安装的。
PS:我们现在能享受到的非 mac 可以安装/启动应用的福利,背后其实都是逆向 xcode 相关通讯协议,然后换种能多平台运行的语言重写,让 ios 系统觉得这个就是 xcode 得到的产物。重签名这个涉及到安全(签名本身就是为了保障应用的可靠性,重写后你想加啥料都可以,带来的影响甚至可能比XcodeGhost要大),可能没那么容易被逆向,而且这个很有可能会把开发者带上法庭甚至监狱,所以估计也没人会公开出来吧。
现在的解决办法是,将打包好的 wda 包通过 sideloadly 安装到手机上。给大伙做个参考
请问你安装到手机上的 wda 包是个人免费证书吗? 还是收费的?
使用 sideloadly 也安装不上,是这个提示
感谢各位大佬,感谢题主,目前已经实现成功使用 win 电脑安装 wda 到 ios 手机中; 直接在 陈恒捷 大佬回帖中提到的 WebDriverAgentRunner.ipa 包,在 win 电脑下使用 爱思助手的 IPA 签名工具,输入自己的 Apple ID 进行重签名,再使用爱思助手可以直接将 ipd 包安装到手机中。