用于单元测试的 Xcode 5 双日志
Posted
技术标签:
【中文标题】用于单元测试的 Xcode 5 双日志【英文标题】:Xcode 5 double log for unit tests 【发布时间】:2013-11-06 08:10:16 【问题描述】:我在 Xcode 5.0 中运行单元测试时遇到问题。 在日志中,每条消息都加倍,但使用断点检查显示每个测试都运行一次。
Test Suite 'Multiple Selected Tests' started at 2013-11-06 07:56:23 +0000
Test Suite 'Multiple Selected Tests' started at 2013-11-06 07:56:23 +0000
Test Suite 'ProjectTests.xctest' started at 2013-11-06 07:56:23 +0000
Test Suite 'ProjectTests.xctest' started at 2013-11-06 07:56:23 +0000
Test Suite 'ColorResourcesTests' started at 2013-11-06 07:56:23 +0000
Test Suite 'ColorResourcesTests' started at 2013-11-06 07:56:23 +0000
Test Case '-[ColorResourcesTests test_createDarkGrayColor_Should_ReturnDarkGray]' started.
Test Case '-[ColorResourcesTests test_createDarkGrayColor_Should_ReturnGray]' started.
Test Case '-[ColorResourcesTests test_createDarkGrayColor_Should_ReturnGray]' passed (0.000 seconds).
测试用例“-[ColorResourcesTests test_createDarkGrayColor_Should_ReturnGray]”已通过(0.000 秒)。
【问题讨论】:
XCTests 非常有问题。尝试重新启动 Xcode 并再次运行测试。 已经多次重启,也在多台 Mac 上检查过。这不是什么大问题,但它破坏了我的 Jenkins 构建...... 如果只运行一个测试会发生什么?如果它仍然不起作用,您可能应该提交一个错误。 我正在使用来自这个问题***.com/questions/19136767/… 的代码覆盖修复,问题在于用户默认值中的** XCTestLog** 酷,将其添加为您问题的答案:) 【参考方案1】:我正在使用来自这个问题 ***.com/questions/19136767/... 的代码覆盖修复,问题在于 XCTestLogin 用户默认值。 (Generate gcda-files with Xcode5, ios7 simulator and XCTest)
#ifdef DEBUG
+ (void)initialize
[[NSUserDefaults standardUserDefaults] setValue:@"XCTestLog,GcovTestObserver"
forKey:@"XCTestObserverClass"];
#endif
【讨论】:
以上是关于用于单元测试的 Xcode 5 双日志的主要内容,如果未能解决你的问题,请参考以下文章
Xcode 5 在运行 64 位单元测试时显示“正在使用模拟器”