【发布时间】:2012-01-24 06:43:37
【问题描述】:
为了自动化测试应用程序,我想从我的 Mac 上重复启动一个带有不同参数的 iOS 应用程序。为简单起见,我们假设它需要一个文件作为 argc,我有 100 个需要测试的文件。理论上,我只想重现 xcode 构建和运行的行为 - 在设备上,而不是越狱;该应用程序与硬件密切相关,因此仅靠模拟器是不够的。
有几个页面做了类似的事情,但没有一个使用该设备,也没有一个真正说明控制台上命令行的实际外观。
1)http://blog.carbonfive.com/2011/04/06/running-xcode-4-unit-tests-from-the-command-line/
此页面设置最终在模拟器中运行的单元测试;他接着说
单元测试构建目标的“运行脚本”构建阶段只是运行 >“${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests”
我检查了,但 RunPlatformUnitTests 和 RunUnitTests 都不是从 Xcode 4 执行的(我重命名了脚本以确保)。
此页面从 1) 离开的位置开始,但仅针对模拟器构建,并未指定应用程序的实际启动方式。它很好地描述了它是如何从命令行构建的。
3)Debugging iOS app built from commandline
我在 Xcode 4 中看到的是构建阶段,它在签名和验证应用程序时停止。接下来我看到的是在设备上运行的 gdb 调试器。但是,我不知道如何访问调试服务器 - 我没有越狱我的 iPhone,所以我无法访问它上面的任何东西,既没有调试服务器也没有 IP 地址。
我可以验证的是,gdb 是从 xcode4/platforms/iPhoneOS.platform 调用的,因此远程调试器必须以某种方式将自身附加到某些东西...
【问题讨论】:
标签: ios xcode4 console automated-tests