Nic*_*k L 6 xcode unit-testing ocunit
我在Xcode和它的"日志导航器"中有一个非常偷偷摸摸的问题.
我重新创造了这样的问题; 我有一个非常简单的OCUnit测试:
-(void)testSimpleFailure{
STFail(@"Please fail!");
}
Run Code Online (Sandbox Code Playgroud)
我清理我的构建,我构建我的测试方案,并运行我的测试.
在输出控制台窗口中,我看到我的所有测试执行,包括上面的测试.控制台显示实际运行的测试AND失败:
##teamcity[testFailed name='-|[SimpleTestClassTests.testSimpleFailure|]' message='Please fail!' details='']
Run Code Online (Sandbox Code Playgroud)
但是,Xcode显示"Tests Succeeded overlay",左侧的"Log Navigator"表示没有问题,全部都是绿色.
还有其他人有过类似的问题吗?有谁知道如何解决这个问题?
在我承诺之前,我非常希望不会得到误报.
编辑澄清我的问题.
Sha*_*ron 11
我正在设备上运行我的应用程序测试和单元测试.我得到了与你相同的结果 - 测试失败但Log Navigator说一切都过去了.不仅如此,我无法在代码中设置断点.
我的解决方案是"编辑方案...",选择"测试"方案,并将我的调试器从"LLDB"更改为"GDB".我正在使用Xcode 4.3.2,我的编译器设置为LLVM 3.1的所有目标
将测试方案的调试器更改为GDB后,Log Navigator会报告测试失败,并且我可以在测试运行时设置断点和调试.
链接:搜索"执行任何代码之前的单元测试崩溃"(LLDB错误)https://github.com/kstenerud/iOS-Universal-Framework
好的,经过5天左右的大约3位开发人员在查看此问题之后,我们找到了一个解决方案:
rm -rf Library/Application\ Support/iPhone\ Simulator
Run Code Online (Sandbox Code Playgroud)
或者,或者,如果吹走整个目录树不是你的事情:
转到iOS模拟器应用程序.从顶部菜单中选择iOS Simulator,然后选择"重置内容和设置..."
显然,模拟器和Xcode之间的某些东西被破坏了,所以Xcode无法挂钩到模拟器上观看测试.Xcode认为没有测试,因此测试通过.
究竟是什么导致了这一点,我们不确定,但经过5个艰苦的日子和1个解决方案后,我们不在乎,因为我们正前往最近的酒吧.
干杯.
归档时间: |
|
查看次数: |
2439 次 |
最近记录: |