我有一组SenTestCase导致XCode 3.2.4出现问题。尝试编译时(使用非常基本的STFail(@“”);)会发生以下编译器错误:
处理命令输出时发生内部错误: -
[XCBuildLogCommandInvocationSectionRecorder endMarker]:
无法识别的选择器发送到实例处理命令输出时发生内部错误: -
[XCBuildLogCommandInvocationSection setTestsPassedString:]:
无法识别的选择器发送到实例
我已经包含了来自'/ Developer / Library / Frameworks'的SenTestkingKit.framework,并且刚刚由'Targets>创建了目标添加>新目标> Cocoa Touch>单元测试包'。有任何想法吗?谢谢!
答案 0 :(得分:21)
这似乎是回归,报告代码的某些部分不遵守时区问题。输出在开始之前被标记为结束,因此非常困惑并且窒息。
我在Google上找到的一个解决方法是更改目标的“运行脚本”阶段。
更改
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"
到
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 1> /tmp/RunUnitTests.out
它正在解决这个问题,而不是解决它,但确实有效。
答案 1 :(得分:4)
开发iPad应用时遇到了同样的问题。尝试将测试目标的Base SDK从iPhone Device 3.2更改为iPhone Device 4.0。
答案 2 :(得分:2)
我遇到了与xcode 3.2.3和iPad相同的问题。 这个帮助我解决它:
Project -> Edit Project Settings -> Build -> Base SDK = iPhone Device 4.0
Project -> Edit Project Settings -> Build -> iPhone OS Deployment Target = iPhone OS 3.2
答案 3 :(得分:2)
我有同样的问题,在另一个问题中讨论了这个话题 Problem doing logic tests after XCode 3.2.4 upgrade
补丁文件发布在github上。这有助于我解决它 http://gist.github.com/586296
答案 4 :(得分:-1)
这似乎是在4.2 SDK中修复的(最后!)。