【发布时间】:2018-08-31 20:14:28
【问题描述】:
我尝试将单元测试添加到我在 Linux Ubuntu 16.04 上的 Swift 项目中。现在我有了目录结构:
MyProject
|-Sources
| └MyProject
| |-IPcalc.swift
| └ main.swift
|
|-Tests
| |-MyProjectTests
| | └IPcalcTests.swift
| └ LinuxMain.swift
|
└ Package.swift
IPcalcTests.swift 文件:
import XCTest
@testable import IPcalc
...
LinuxMain.swift 文件:
import XCTest
@testable import IPcalcTests
XCTMain([
testCase(IPcalcTests.allTests),
])
Package.swift 文件:
import PackageDescription
let package = Package(
name: "MyProject",
products: [],
dependencies: [],
targets: [
.target(
name: "MyProject",
dependencies: []),
.testTarget(
name: "MyProjectTests",
dependencies: ["MyProject"]),
]
)
当我尝试执行 swift test 时,我得到:
$ swift test
Compile Swift Module 'MyProjectTests' (2 sources)
/home/user/MyProject/Tests/MyProjectTests/IPcalcTests.swift:2:18: error: no such module 'IPcalc'
@testable import IPcalc
为什么我无法将 IPcalc 类导入 IPcalcTests.swift?
【问题讨论】:
-
不久前我也遇到过类似的事情。问题是我需要先手动构建缺少的模块,然后再进行项目的其余部分。这有帮助吗?
标签: swift