我想在我的Cocoa项目的单元测试中使用OCMock。我已下载最新版本的OCMock(2.0.1)并将 OCMock.framework 复制到我项目的目录中。在Xcode中,我已将框架添加到单元测试目标的链接阶段。然后我添加了一些使用OCMock类的代码。
从那时起,所有单元测试都被报告为“成功” - 绿灯,没有错误或警告。即使在引入STFail
次调用之后,Xcode声称“测试成功”。在任意测试方法中放置断点会发现它们都没有被执行。
如果我使用OCMock注释掉代码,包括import
指令,问题仍然存在。
当我从链接阶段删除OCMock时,问题消失了 - 即STFails
再次失败 -
这类似于我以前问过的another question,但不完全相同:在这种情况下,日志导航器中的信息显示没有错误。什么可能导致这种行为?我该怎么做才能诊断出这个问题?
答案 0 :(得分:2)
事实证明我的框架是missing a Copy Files build phase,显然可能导致a variety of issues。
这对我有用:
+
按钮添加它在Xcode 4.6中不起作用(可能是因为框架是目录?)。@loader_path/../Frameworks
。这样,单元测试可执行文件将能够在运行时找到框架。请注意,您还可以使用“产品目录”作为复制文件阶段的目标,在这种情况下,您可以跳过第四步。