【问题标题】:Swift XCTest namespace bug?Swift XCTest 命名空间错误?
【发布时间】:2015-05-19 20:56:39
【问题描述】:

我想知道我是否在 Swift 1.2/XCode 6.4(6E23) 中发现了命名空间/XCTest 错误:

我有一个带有公共函数 encode 的 .swift 文件,它需要几个参数。我还有一个 XCTest 文件来测试encode 函数。

我的 XCTest 文件可以很好地导入我的代码 - 我可以从中调用公共函数,甚至当我开始编写它时,给我带来麻烦的函数 encode 也能很好地自动完成。但是,当我尝试编译它时,我可以看到它失败(带有“调用中的额外参数”),因为编译器认为我正在调用 Foundation.encode 而不是我自己的。

更改它的名称使其工作正常,但这不是重点; Swift 应该优先考虑您的模块而不是系统的,所以这是一个错误还是我遗漏了什么?

【问题讨论】:

    标签: swift namespaces xctest


    【解决方案1】:

    可能是这个问题:

    声明encode 的swift 文件是否将Target Membership 设置为您的测试包和主包?如果没有,请选择 swift 文件,然后在右侧菜单中的 Target Membership 下,也选择您的测试包(它应该是一个复选标记)。

    【讨论】:

    • 确实如此,唉,这没什么区别。我有一个演示问题的虚拟项目here
    • 我已经在这个here上提交了一个雷达
    猜你喜欢
    • 1970-01-01
    • 2013-06-17
    • 2012-10-24
    • 1970-01-01
    • 2013-02-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多