在 Xcode 单元测试中测量期望时间
Posted
技术标签:
【中文标题】在 Xcode 单元测试中测量期望时间【英文标题】:Measure expectation time in Xcode Unit Testing 【发布时间】:2016-05-06 00:36:42 【问题描述】:我想计算在我的应用中调用通知需要多长时间。我有一个这样的测试设置:
func testLoadingPerformance()
self.measureBlock
self.expectationForNotification("Loaded", object: nil, handler: nil)
self.waitForExpectationsWithTimeout(30, handler: nil)
print("loaded")
我已经设置了断点,并且在测试期间肯定会调用通知,并且 waitForExpectationsWithTimeout 在打印“加载”时继续执行。
然而,测试在 Xcode 中永远不会完成,它只会运行直到超时。我知道这个块肯定被执行了,为什么它不会通过呢?
【问题讨论】:
【参考方案1】:self.measureBlock
内部的方法被调用了 10 次。其中的“测量”部分取这 10 次运行的平均值来计算平均值。如果 10 次未收到 Loaded 通知,那么您将停止。我希望这是你的问题。
【讨论】:
以上是关于在 Xcode 单元测试中测量期望时间的主要内容,如果未能解决你的问题,请参考以下文章
测试驱动开发 (TDD):在 Xcode 4 中编写单元测试