我正在尝试将Ocmock添加到我现有的
Cocoa项目中,但我遇到了一个我没有看到其他人覆盖的奇怪问题.
我最终将它分离到以下内容:如果我只是将Ocmock.framework引用添加到我的项目中(即以某种方式将其拖到Link Binary With Libraries构建阶段),当我运行测试时,真正的应用程序将被启动.
没有Ocmock,输出正常:
Test Suite 'Multiple Selected Tests' started at 2013-02-07 20:07:03 +0000
使用Ocmock框架链接(部分输出):
Error loading MyProjTests.octest/Contents/MacOS/MyProjTests Library not loaded: @rpath/Ocmock.framework/Versions/A/Ocmock Reason: image not found IDEBundleInjection.c: Error loading bundle '/Users/alex/Library/Developer/Xcode/DerivedData/MyProj-bqwyxyspdiudktfnjcdgibdmpgsa/Build/Products/Debug/MyProjTests.octest'
此后,其他应用程序输出显示为正常.当应用程序运行时,测试进度在项目导航器的最后一个选项卡上旋转,并且在您退出应用程序之前不会停止.因此,在您的应用运行的整个过程中,测试应该正在进行中.
清除测试主机或捆绑加载器没有解决,只产生错误架构的链接错误.
我正在使用最新的Xcode,4.6.任何帮助非常感谢.
解决方法
好的,终于弄清楚了,在我点击这里提交SO之前,所以我想我会分享答案.问题是Ocmock.framework在运行时不可用.
官方Ocmock步骤只是说下载并添加到目标,但不要告诉你添加复制阶段.我在测试目标中添加了一个新阶段,将框架复制到产品目录中,现在测试运行正常.
主应用程序将启动是非常意外的,我希望这有助于其他人.
编辑:
添加图片.每个人都喜欢图片
步骤1
第2步
第3步
第4步