IOS模型、数据库、无视图的网络测试&;控制器

IOS模型、数据库、无视图的网络测试&;控制器,ios,objective-c,unit-testing,xctest,Ios,Objective C,Unit Testing,Xctest,我认为我的ios应用程序有三个级别: 顶部:视图和控制器 中间:模型、数据库、网络 底部:不依赖任何东西的基础结构类(例如线程安全的NSDictionary) 我使用XCUIApplication使用XCTest测试顶层单元测试。 我使用不使用XUIApplication的XCTest测试对底层进行单元测试 我想不出一个测试中级水平的好方法 这些测试需要一个XCUI应用程序,但可以通过GUI操作触发。我可以将这些测试构建到应用程序中,并通过通知触发它们。然而,我不想将这些测试与应用程序一起发

我认为我的ios应用程序有三个级别:

  • 顶部:视图和控制器
  • 中间:模型、数据库、网络
  • 底部:不依赖任何东西的基础结构类(例如线程安全的NSDictionary)
我使用XCUIApplication使用XCTest测试顶层单元测试。 我使用不使用XUIApplication的XCTest测试对底层进行单元测试

我想不出一个测试中级水平的好方法

这些测试需要一个XCUI应用程序,但可以通过GUI操作触发。我可以将这些测试构建到应用程序中,并通过通知触发它们。然而,我不想将这些测试与应用程序一起发布,我认为一定有更好的方法

如果您有任何建议,我将不胜感激


谢谢大家!

除了视图,我使用单元测试进行所有测试。关键是模拟依赖关系。我已经写了一篇关于如何为网络代码做到这一点的文章