测试完成后 Xcode 继续
Posted
技术标签:
【中文标题】测试完成后 Xcode 继续【英文标题】:Xcode continues after test completes 【发布时间】:2014-05-06 00:59:51 【问题描述】:什么会导致 Xcode 认为测试尚未完成?
我对一个多线程组件(使用 GCD)进行了许多单元测试,其中测试完成,但 Xcode 需要另外几分钟左右才能识别出测试实际上已经完成。
我知道测试已经完成,因为调试控制台中显示以下文本:
Test Suite 'Multiple Selected Tests' finished at 2014-05-06 00:45:56 +0000.
Executed 1 test, with 0 failures (0 unexpected) in 1.249 (1.258) seconds
Program ended with exit code: 0
我可以很好地调试测试和组件,但是当我在代码末尾继续时,Xcode 还需要几分钟左右才会说测试已完成。
有什么想法会导致这种情况吗?我正在拔头发。
OS X 10.9.2 Xcode 5.1.1 适用于 ios 7.1 的 iOS 模拟器谢谢,
大卫
【问题讨论】:
在您的测试中,您可能需要阻塞直到所有异步任务完成。很难对线程代码进行单元测试 感谢您的回复。我会再试一次,但我已经尽我所能做到了。这只发生在少数几个测试中,这很奇怪。 【参考方案1】:结果证明这是一个使用 NSLog 进行调试日志记录过多的问题。我的测试使用了一个模拟的 NSURLProtocol,我用大量的文本调用 NSLog。显然,这对应用程序和 Xcode 之间的通信链接产生了影响。删除那些对 NSLog 的调用解决了这个问题。
【讨论】:
以上是关于测试完成后 Xcode 继续的主要内容,如果未能解决你的问题,请参考以下文章
想要在 Xcode 中的 UI 测试期间在测试运行后停止调试控制台清除
Xcode UI 测试:如何在继续测试之前检查下一个 XCUIElement 是啥