ios - 使用@testable 时“模块未编译用于测试”

标签 ios swift unit-testing swift5

我正在尝试使用 Swift 的 @testable 声明将我的类暴露给测试目标。但是我收到了这个编译器错误:

enter image description here

Intervals 是包含我要公开的类的模块。我该如何摆脱这个错误?

最佳答案

在您的主要目标中,您需要将 Enable Testability 构建选项设置为 Yes。

根据下面@earnshavian 的评论,根据苹果发行说明,这应该只用于调试构建:“启用可测试性build设置应该只用于调试配置,因为它禁止依赖于不导出的优化来自应用程序或框架的内部符号”https://developer.apple.com/library/content/releasenotes/DeveloperTools/RN-Xcode/Chapters/Introduction.html#//apple_ref/doc/uid/TP40001051-CH1-SW326

关于ios - 使用@testable 时“模块未编译用于测试”,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30787674/

相关文章:

swift - 如何重写(太大)IF 语句的代码?

c# - Unity 测试工具使用 GameObject 进行单元测试给出 "You are trying to create a MonoBehaviour using the ' new' 关键字。这是不允许的。”

multithreading - 如何测试在 goroutine 中监视文件的函数

ios - 辅助功能检查器不适用于 iOS 11.2

ios - 从首选项包中读取 BOOL 值

ios - 在 Swift 中获取 UIcollectionView 中的下一个单元格

SwiftUI ObservedObject Binding KeyPath 下标错误

Django manage.py 测试无法正确加载夹具

ios - 使用带有 Firestore 的 Cocoapod 来定位 iOS 扩展时出错

ios - iOS ShareExtension 应用程序中的数据共享问题