UIAutomation 不适用于 IPA 的分发类型
Posted
技术标签:
【中文标题】UIAutomation 不适用于 IPA 的分发类型【英文标题】:UIAutomation not working with Distribution type of IPA 【发布时间】:2013-06-26 10:26:57 【问题描述】:我正在尝试使用 UIAutomation
自动化应用程序。它仅适用于使用开发配置文件构建的 IPA。在使用 distribution provisioning profile
构建的 IPA 的情况下,无论是 adhoc 还是应用商店分发,它都会卡住。它只是启动应用程序,然后仪器挂断记录页面并且不记录任何步骤。但在development provisioning profile
的情况下它工作正常。我已阅读苹果提供的 Instruments User Guide 中的此说明
注意:为了保护您,自动化工具允许您仅处理已使用您的配置文件进行代码签名的应用程序。这些应用程序包括从 iTunes App Store 下载的任何副本。
本指南的链接 - http://developer.apple.com/library/ios/#documentation/DeveloperTools/Conceptual/InstrumentsUserGuide/UsingtheAutomationInstrument/UsingtheAutomationInstrument.html
根据本指南,如果我使用我的配置文件对其进行了签名,我也可以自动化从应用商店下载的应用。我拥有我的应用的所有配置文件和证书,但仍然无法自动化应用。
我已经尝试了所有方法,但无论是文档中的错误还是我做错了什么都不起作用..
【问题讨论】:
【参考方案1】:如果您查看 OP 链接到的页面上的注释,它会说: 注意:自动化工具仅适用于已使用开发配置文件进行代码签名的应用程序。使用分发配置文件签名的应用无法通过 UI 自动化编程接口自动化。
您只能在使用开发配置文件进行代码签名的应用上进行测试。一旦应用程序被签署分发,它只能由 App Store 使用,如 here 所述。
【讨论】:
【参考方案2】:我最近一直在处理类似的问题。
我们让 Jenkins 构建了我们的 ipa,通常的工作流程是将它们复制到我的机器上并运行 UI 自动化。 一切都为我工作得很好。不过,我们最近更改了配置文件。 我确认我的 UDID 在此配置文件中,并且我已将这个最新最好的配置文件复制到我的设备和计算机上。当我现在启动 UI 自动化(就像上面的用户)应用程序启动时,没有记录任何步骤。为冗长添加 -v
似乎也无济于事。
当我从我们最新的主干(相同的代码)本地构建,然后归档到 ipa 时,UI 自动化运行良好。 看起来我们 Jenkins 服务器的 ipa 与我所拥有的不匹配。然而,谈到开发,一切看起来都应该正常工作。
这里一定还有一些我遗漏的东西。
【讨论】:
这听起来像是一个新问题的基础,而不是对所提出问题的回答。我建议基于此提出一个新问题,并在必要时链接回此问题。 是的,你是对的。当您在设备上本地构建时,它使用开发配置文件构建。但是 jenkins build 是使用分发配置文件构建的。而且您无法在分发构建上运行自动化以上是关于UIAutomation 不适用于 IPA 的分发类型的主要内容,如果未能解决你的问题,请参考以下文章
Swift 和 TestFlight 适用于 iOS 8 但不适用于 iOS 7
node ios socket.io SSL 适用于 xcode 调试,但不适用于 ipa install