使用Carthage进行依赖关系管理的正确方法是什么,但也可以使用它为它所引入的类型编写测试。例如,(这是假设的)如果我拉入AlamoFire并且假设它具有响应协议并且不同具体类型符合Response协议。在我自己的图书馆,如果我这样做
@testable import AlamoFire
它会抱怨模块'AlamoFire'没有编译进行测试。做一些研究,我相信这是因为在发布版本中应该将启用可测试性设置为NO,这是Carthage默认使用的。有没有办法在测试目标中使用这样的第三方类型?
使用import
而不是@testable import
来访问模块的公共类型。
同样在您的测试目标的构建阶段,将AlamoFire添加到“Link Binary With Libraries”