【问题标题】:Can't access swift files in Unit test target in Xcode无法在 Xcode 的单元测试目标中访问 swift 文件
【发布时间】:2023-04-06 05:57:01
【问题描述】:

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

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

谁能帮我解决这个问题?

【问题讨论】:

    标签: ios swift xcode unit-testing xctest


    【解决方案1】:

    尝试将其添加到您的测试文件之上:

    @testable import <YOUR_MODULE_NAME>

    【讨论】:

      【解决方案2】:

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

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

      1. ENABLE_TESTABILITY 构建设置设置为YES。
      2. 将@testable 添加到模块的导入语句中。 @testable import MySwiftApp

      如果您遵循这两个步骤,您的 SlideViewController(只要它不是私有类)应该可以从您的单元测试文件中访问,就像它被声明为一个开放类一样。

      【讨论】:

        【解决方案3】:

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

        1.- 转到项目导航器

        2.- 选择您的项目

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

        4.- 选择构建阶段选项卡

        5.- 打开“编译源”

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

        【讨论】:

        • 然后将 swift 文件添加到单元测试目标成员中,这并不理想。
        猜你喜欢
        • 2019-11-13
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2011-07-31
        • 1970-01-01
        • 2016-03-09
        • 1970-01-01
        相关资源
        最近更新 更多