协议由自定义视图控制器使用 我不确定这是否是正确的方法,但是现在我在单元测试类中实例化视图控制器。
目前我正在尝试这样做:
override func setUp() {
super.setUp()
let storyboard = UIStoryboard(name: "Main", bundle: nil)
vc = storyboard.instantiateViewController(withIdentifier: "Transactions") as! TransactionsViewController
}
但它说Use of undeclared type 'TransactionsViewController'
。
这是要走的路吗?如果是,我如何使视图控制器可见?
答案 0 :(得分:1)
单元测试通常是一个单独的目标,因此要使主目标中的文件对测试目标可见,您必须更改File Inspector
中的目标成员资格。
在您的情况下,您应该将Main.storyboard
和TransactionsViewController
分享给您的测试目标。
答案 1 :(得分:0)
从Swift 2开始,您可以导入您尝试编写测试的模块:
@testable import ModuleName
使用此方法,您无需手动将App Target中的文件添加到测试目标。
所以,如果您的主要目标被命名为" MyApp"并且您的测试目标是" MyAppTests",您可以将其包含在您正在编写的每个测试文件的顶部:
@testable import MyApp