Xcode建立Command Line Tool工程时添加单元测试的方法

Xcode中创建Command Line Tool工程时,界面如下:

Xcode建立Command Line Tool工程时添加单元测试的方法_第1张图片

并不会出现创建 iOS App时的同时包含单元测试的选项。
Xcode建立Command Line Tool工程时添加单元测试的方法_第2张图片
可以勾选“Include Unit Tests”

手动给 Command Line Tool工程添加 Unit Tests Target是可以的,但是却无法选择待测试的 target
Xcode建立Command Line Tool工程时添加单元测试的方法_第3张图片
Target to be Tested不可选

并且之后在 Target里也不可选择:
Xcode建立Command Line Tool工程时添加单元测试的方法_第4张图片
没有可选的Target

这时候我们要打开 Edit Scheme,编辑主 targetTest选项,手动选择我们已添加的 Unit Tests Target,使之成为主 target测试的一部。
Xcode建立Command Line Tool工程时添加单元测试的方法_第5张图片
CLTEditScheme.jpg

在测试文件中添加代码:

@testable import CommandLineToolForTest
func testSomeFunc() {
    let someObject = SomeClass()
    someObject.someFunc()
    XCTAssert(true)
}

执行还是会报错。


Xcode建立Command Line Tool工程时添加单元测试的方法_第6张图片
Test Target没有引入我们需要测试的模块

我们需要在我们需要引用的代码文件的Target Membership中勾选相应的Tests Target

Xcode建立Command Line Tool工程时添加单元测试的方法_第7张图片
勾选Tests Target

这样测试用例就能跑起来了。


Xcode建立Command Line Tool工程时添加单元测试的方法_第8张图片

你可能感兴趣的:(Xcode建立Command Line Tool工程时添加单元测试的方法)