单元测试不了解 XCTest 期望的异步 UI 代码?
Posted
技术标签:
【中文标题】单元测试不了解 XCTest 期望的异步 UI 代码?【英文标题】:Unit testing asychronous UI code which does not know about XCTestExpectations? 【发布时间】:2015-02-09 21:45:54 【问题描述】:如何对在不平凡的图形设置中工作的 ios 代码片段进行单元测试?
考虑例如视图控制器A
和B
,其中A
将B
与performSegueWithIdentifier:sender:
堆叠在一起。单元测试应该检查 C
的行为,这取决于两个视图控制器的排列方式。
performSegueWithIdentifier:sender:
异步工作,即单元测试将在其完成任务之前结束,除非让单元测试等待类似XCTestExpectation
的东西。但在这种情况下,B
和 C
都没有准备好根据这种期望致电 fulfill
。
在这种情况下是否有前进的道路,即在没有准备好调用 fulfill
的钩子的情况下测试异步 UI 代码?
【问题讨论】:
这听起来更像是 UI 自动化而不是 XCTest。你在你的例子中用 C 测试了什么? @psobko 我想用 XCTest 自动化(也)测试 UI 代码。C
执行非 UI 操作,但要对 A
和 B
进行操作。
【参考方案1】:
我得出的结论是,采用集成测试框架(例如 KIF)可能是可行的方法。
【讨论】:
以上是关于单元测试不了解 XCTest 期望的异步 UI 代码?的主要内容,如果未能解决你的问题,请参考以下文章