XCode 3.2.4升级后进行逻辑testing的问题
最近升级到XCode 3.2.4和iOS SDK 4.1导致我的unit testing不再适用于我的iOS项目。 该项目目前只在模拟器上运行,而不是真正的硬件。
我试图做一个新的空白项目添加一个虚拟的testing用例,总是会通过,但它也不起作用,给我这个结果:
处理命令输出时发生内部错误:
– [XCBuildLogCommandInvocationSection setTestsPassedString:]:发送到实例0x20176e320的无法识别的select器
处理命令输出时发生内部错误:
– [XCBuildLogCommandInvocationSectionRecorder endMarker]:无法识别的select器发送到实例0x201257de0
是否有其他人使用XCode 3.2.4和iOS SDK 4.1testing用例?
报告代码的某些部分似乎没有考虑到时区问题。 输出在开始之前被标记为结束,所以变得非常困惑和窒息。
我在Google上find的一个解决方法是更改目标的运行脚本阶段。
更改
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests"
至
"${SYSTEM_DEVELOPER_DIR}/Tools/RunUnitTests" 1> /tmp/RunUnitTests.out
它正在研究这个问题,而不是解决它,但确实有效。
该问题的解决方法发布在苹果的开发者论坛上。 它在我的项目中工作正常。 访问网站并尝试。
我的build议来解决你的问题是考虑使用GHUnit。 它与现有的SenTestCase类一起工作,但它也有一组testing类/断言。 你只需设置一个新的目标,并指向他们的驾驶员级别。 您将得到一个function齐全的testing工具,可以在模拟器和真实设备上运行testing。 我觉得比build立一个testing包和pipe理所有这些要容易得多。