ios - 更改部署目标后无法再将应用程序模块导入单元测试

标签 ios xcode swift unit-testing build-settings

为了在我的快速单元测试中对我的主要应用程序目标的公共(public)类进行单元测试,我必须像这样在我的测试中导入我的主要应用程序模块:

#import MyAppModuleName

在我将我的部署目标从 7.0 更改为 8.4 之前,它工作得很好。

现在构建和运行我的应用程序仍然完美,但运行单元测试停止工作。编译器提示上面的导入语句:Swift Compiler Error: Module file's minimum deployment target is iOS8.4 v8.4

我不知道为什么。我是否忘记在其他地方更改部署目标?

我的工作区 (Xcode 6.4.) 包含我自己的项目和一个 Pods 项目(由 cocoapods 自动创建)。我在我的应用程序和测试中同时使用 Swift 和 Objective-C。

以下是我所做的更详细的内容:

1) 将我的项目、我的主要目标以及我工作区中的 Pods 项目和所有 Pod 目标的部署目标从 7.0 更改为 8.4。

enter image description here enter image description here enter image description here enter image description here

2) 清理构建文件夹 (Shift+Alt+Cmd+K) 并重新启动 Xcode。

3) Cmd+U -> 错误

当将主应用程序的部署目标改回 7.0 时,一切再次正常。

知道这个问题是从哪里来的吗?

最佳答案

您几乎完成了,您只需要为您的项目和两个目标更新 iOS 部署目标。

对于您的项目: enter image description here

对于您的应用目标: enter image description here

对于您的测试目标: enter image description here

您可能应该清理并重建,无需重新启动 Xcode。我想如果你想以 8.1 等为目标,这也会起作用。

关于ios - 更改部署目标后无法再将应用程序模块导入单元测试,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31461012/

相关文章:

iphone - 在禁用按钮的情况下淡入淡出图像

ios - Xcode 自动建议和索引问题

objective-c - iPhone 拿着 "upwards"或放在 table 上

ios - 自动完成不适用于 Xcode 6 中的 "@"

ios - 解析具有特定条件的字符串

ios - 在 Swift 中单击单元格后 Xcode 触发操作

ios - 格式化互联网时间字符串(Swift 1.2)

ios - 从 Specs Repo 中删除 Cocoapod

Xcode Swift 动画循环次数过多

ios - 升级到 Xcode8 后 React Native RCCTCustomScrollView 损坏