开发者社区 问答 正文

如何在用MobileIron包装的IPA构建上运行XCUI测试

有没有办法在用MobileIron包装的IPA构建上运行使用XCUItest框架编写的自动化测试?

我正在测试的应用程序是用SWIFT 4、XCode 11编写的iOS应用程序,开发团队用MobileIron包好构建,让QA团队在不需要VPN连接的情况下测试这个版本。如果我是从XCode运行测试,应用程序是构建和编译的,所以这样我只能测试应用程序的未包装版本,我使用的是VPN连接。

展开
收起
游客5akardh5cojhg 2019-12-10 22:44:01 402 分享 版权
阿里云 AI 助理回答

在使用MobileIron包装的IPA进行自动化测试时,直接通过XCTest框架运行确实存在挑战,因为MobileIron封装通常是为了增强应用的安全性和管理性,这可能会与直接从Xcode运行UI测试产生冲突。不过,有几种方法可以尝试绕过这些限制来实现你的测试目标:

  1. 使用TestFlight或企业分发:如果可能的话,让开发团队通过Apple TestFlight或者企业分发的方式提供一个未加密的、用于测试的版本。这样你可以在真实设备上安装该应用,并通过XCTest正常执行自动化测试。

  2. HockeyApp 或 Firebase App Distribution:类似TestFlight,这些第三方服务也可以帮助分发测试构建,便于在设备上安装并执行自动化测试。

  3. 脱壳(Unwrapping):理论上,你可以尝试对MobileIron封装的IPA进行脱壳处理,以恢复原始的应用程序包,然后重新签名并安装到设备上进行测试。但请注意,这种方法可能违反了企业的安全策略和版权法,且技术上具有挑战性,不推荐未经许可尝试。

  4. 云测试服务:考虑使用阿里云的移动测试服务(如PTS-Performance Testing Service),虽然它主要针对性能和压力测试,但部分服务支持上传特定的APP包进行功能测试。你可能需要咨询阿里云技术支持确认是否支持MobileIron封装的IPA以及如何集成XCUItest。

  5. 调整测试策略:如果上述方法都不适用,可能需要与开发团队合作,探讨能否在开发阶段就集成自动化测试脚本,或者在打包前完成大部分的自动化测试,确保基础功能的稳定。

  6. 模拟环境测试:如果应用程序逻辑允许,可以在模拟器中使用未封装的版本进行自动化测试,尽管这可能无法完全覆盖所有真实设备上的行为。

请记得,在采取任何行动之前,务必与你的IT安全部门和开发团队沟通,确保遵守公司政策和法律法规。

有帮助
无帮助
AI 助理回答生成答案可能存在不准确,仅供参考
0 条回答
写回答
取消 提交回答