无法访问Xcode中单元测试目标中的swift文件

时间:2017-06-20 06:30:22

标签: ios swift xcode unit-testing xctest

将swift文件添加到测试目标将起作用,但这不是最好的方法。我的问题是我无法访问Swift文件,而Objective-C文件是可访问的。

我已检查产品模块名称并将配置文件设置为与测试目标的项目文件相同。甚至删除了测试目标并重新读取,但仍然遇到“在SlideViewController中使用未声明的类型”。

任何人都可以帮我解决这个问题吗?

3 个答案:

答案 0 :(得分:7)

默认情况下,您无法从单元测试目标访问内部类。

使用swift编写测试的苹果docs说你需要采取两个步骤来解决这个问题:

  1. ENABLE_TESTABILITY构建设置设为YES。
  2. 将@testable添加到模块的import语句中。 @testable import MySwiftApp
  3. 如果您按照这两个步骤操作,您的SlideViewController(只要它不是私有类)应该可以从您的单元测试文件中访问,就像它被声明为开放类一样。

答案 1 :(得分:0)

尝试在测试文件的顶部添加:

@testable import <YOUR_MODULE_NAME>

答案 2 :(得分:-1)

有时您需要将文件添加到测试目标的构建阶段。

1.-转到项目导航器

2.-选择您的项目

3.-在项目和目标列表中,选择测试目标(例如“MyProjectTests”)

4.-选择Build Phases选项卡

5.-打开“编译源”

6.-使用加号,添加编译所需的文件