我刚开始学习TDD概念并尝试编写测试。 首先,我想检查我的ViewController的标题是否与我想要的相同。
我的VC有一个非常简单的类:
class MyViewController: UIViewController {
override func viewDidLoad() {
super.viewDidLoad()
self.title = "Discover"
}
}
在我的测试中,我正在检查:
func test_titleShouldBe_Discover() {
sut = MyViewController()
XCTAssertEqual(sut.title, "Discover")
}
我在测试中遇到了这个错误:
XCTAssertEqual failed: ("nil") is not equal to ("Optional("Discover")")
有人可以告诉我哪里做错了吗?
答案 0 :(得分:1)
因为在viewDidLoad()
之后不会自动调用init
。添加调用以加载视图:
func test_titleShouldBe_Discover() {
sut = MyViewController()
sut.loadViewIfNeeded()
XCTAssertEqual(sut.title, "Discover")
}