我在Xcode 4.5中有一个简单的 Mac OS X 命令行工具项目。我手动从 Cocoa Unit Testing Bundle 模板中添加了一个单元测试目标(命令行工具模板没有包含单元测试开关)。问题:运行测试时,我无法让调试器在断点处停止(Product> Test)。
当我在询问之前进行谷歌搜索时,这些是我已经尝试/检查的一些内容:
在单元测试中,我还能做些什么来打破断点?
答案 0 :(得分:1)
检查单元测试目标的“构建后测试”构建设置(在“单元测试”下)。
如果此设置设置为“Yes”,则在构建目标之后,测试将通过Xcode“外部”的shell脚本执行,然后通过Xcode执行(再次)。因此,如果您的测试在执行脚本时失败,那么第二次执行(“内部”Xcode)将不会发生,因此您的断点不会被命中。
-OR -
如果您尝试调试的测试是测试失败,则可能是-setUp方法中发生了故障。如果您在setUp中使用OCMock并且忘记了在安装过程中碰巧调用的方法,则可能会发生这种情况。
答案 1 :(得分:0)
我在ios应用程序的单元测试中遇到了类似的漏洞。在不同的位置使用代码的新副本为我修复了这个问题。
更新:有问题的状态似乎位于项目/工作区内的xcuserdata目录中。当我再次碰到它时,清除这个问题解决了这个问题。但请注意,您将丢失所有先前的状态(例如,设置断点,打开窗口等)