意外的零测试
问题描述:
我尝试测试我的UIViewController当我设置标题:意外的零测试
var sut: FloorPlanVC!
override func setUp() {
let storyboard = UIStoryboard(name: “FloorPlan”, bundle: nil)
sut = storyboard.instantiateInitialViewController() as! FloorPlanVC
_ = sut.view
}
func testSetTitle() {
sut.title = “Title” //1
XCTAssertEqual(sut.navigationItem.title, “Title”) //2
}
输出1在控制台上:
po sut.title //Title
po sut.navigationItem.title //Title
输出2在控制台上:
po sut.title //Title
po sut.navigationItem.title //nil
答
您现在面临的问题与某些人对此问题提出的问题类似:
Changing navigation title programmatically
你的问题是在测试环境中,但我认为你可以涉及到它。 我个人发现整个设置在测试环境中会导致您意想不到的行为。看看我给你的链接中的答案,试试哪一个会工作,并让我知道。 我打算只复制它们,但没有意义,你可以点击链接。
输出2当你打电话吗?在输出1之后? – KKRocks
是的,刚好在1 –
之后,这是因为navigationItem没有,如果你的控制器没有嵌入tabBarViewController。 – KKRocks