【发布时间】:2021-02-12 16:00:44
【问题描述】:
我无法将代码覆盖率提高到最低限度。 90% 因为 XCode 考虑了 PreviewProvider。
我该怎么办?删除所有 SwiftUI 预览?或者有没有办法可以排除一些带有“PreviewProvider”关键字等的行。
Xcode 12.0 版 詹金斯 CI slather & cobertura 的代码覆盖率
附带问题,没有可用于单元测试 SwiftUI 组件的官方测试套件。你们根本不测试它们,还是使用第三方库?我一直在使用 ViewInspector,但我不喜欢用它来跟踪组件的更新状态,我需要在实际代码库本身中包含测试代码。
【问题讨论】:
-
您可以使用一些定义的宏创建专用测试配置,并排除该定义使用提供的预览。 SwiftUI as UI 可以通过与 UIKit 之前相同的 UI 测试目标类型进行测试。
-
我没有测试 SwiftUIView 文件,我只是将 PreView 注释掉。
-
你为什么要这个?你真的在测试视图代码吗?如果没有,您可以简单地排除视图文件。否则,您似乎需要的是欺骗性报道。
标签: swift xcode swiftui cobertura