【问题标题】:Disable simulator in SwiftUI unit test在 SwiftUI 单元测试中禁用模拟器
【发布时间】:2021-11-21 13:46:50
【问题描述】:

我是 SwiftUI 和 XCode 的新手,并试图通过一本 TDD 书籍来学习它。到目前为止,所有测试都是非 UI 测试;它们只是逻辑单元测试。运行非 UI 单元测试时有什么方法可以禁用模拟器? 我猜如果没有模拟器,它会运行得稍微快一点,而且每次都弹出模拟器来运行单元测试有点烦人。 我试图编辑我的测试方案,它只包括单元测试而不是 UI 测试;仍然每次都会弹出模拟器。 我正在使用 XCode 12.5.1。

【问题讨论】:

    标签: swift unit-testing swiftui xcode12.5


    【解决方案1】:

    在运行非 UI 单元测试时有什么方法可以禁用模拟器?

    我这样做的方法是将所有业务逻辑代码及其单元测试放入一个框架中。 Xcode 在不加载应用目标的情况下测试框架,因此不涉及模拟器。

    【讨论】:

    • 对于一个快速的初学者,请详细说明您所说的“框架”是什么意思?
    • 嗯,很难说得更清楚。例如,请参阅developer.apple.com/library/archive/technotes/tn2435/…。如果这太麻烦了,或者它不能很好地与您的 SwiftUI 结构配合使用,请不要这样做(并且您只需要在运行测试时启动模拟器即可)。
    • 哇,刚刚意识到你是 ios 社区中著名的 Matt!
    • 抱歉又捡到这个了;我试图在我的工作区中创建一个框架项目;但是在运行框架代码测试时,它仍然会加载 UI。是不是因为我的工作区也有 UI 项目?
    猜你喜欢
    • 2019-12-13
    • 2016-08-20
    • 2017-02-09
    • 2018-11-27
    • 1970-01-01
    • 2015-05-04
    • 2016-11-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多