Xcode从 Xcode 12.5开始支持XCTest
watchOS 目标的测试用例,但是没有给出示例代码,也没有给出关于该主题的 WWDC 讨论。
该ClockKit
框架本质上是非常严格的,这使得在不编写专门用于测试的抽象的情况下针对您的代码生成规范是不切实际的。
例如,不可能构造带有或指定的任意CLKComplication
实例,因为没有对任一属性的公共写访问权,也没有接受它们的构造函数。传递一个实例(到和其他函数)是系统如何从您的并发症中请求更新。family
identifier
CLKComplication
getCurrentTimelineEntry
解决这个问题的最佳方法是什么?
我可以看到这些路径,但也许我错过了一些东西;
- 更新我
ComplicationController
以接受协议,基于(并实现)的公共 APICLKComplication
,并从我的测试中传递它 - 抽象出函数
ClockKit
将调用 myComplicationController
,因此存在接受各个参数的函数版本,这些参数又由“真实”API调用 - 找到一种
CLKComplication
在测试中覆盖实数属性的方法,特别是