创建用户界面时Swifui.,想法是构建一个可以容易地映射到用户界面的元素的视图模型。在这种情况下,使用标准单元测试框架可以在模型上完成大部分测试,这使得这些测试直接写入并快速运行。要测试模型与视图之间的绑定,开发人员通常会达到xcuitest.,一个启动完整应用程序和遥控器的测试自动化框架。它有效,测试合理稳定,但他们需要很长时间才能运行。
为了提供更快的方法来编写Swifui的单位测试,请尝试ViewIspector.,一个使用SWIFT的公共反射API来访问SWIFTUI创建的底层视图的开源框架。使用ViewISpector,测试只需实例化SWIFTUI视图,找到需要进行测试的接口元素,然后对其进行断言。也可以测试诸如水龙头等基本交互。与许多UI测试框架一样,它提供了通过指定通过视图层次结构的路径或使用一组Finder方法来定位接口元素的API。这些测试通常比xcuitests更简单,它们跑得更快。但是,谨慎的话,鉴于使用ViewIspector写入测试的轻松,您可能会旨在过度测试接口。测试简单的一对一映射只是双入口簿记。虽然ViewISpector使得更容易测试SWIFTUI代码,但请记住在模型中保持大多数逻辑。