簡體   English   中英

單元測試Interface Builder和Storyboard開發

[英]Unit testing Interface Builder and Storyboard development

這種單元測試有意義嗎?

func testPreferencesTabViewControllerNotNil() {
    var sb = NSStoryboard(name: "Main", bundle: nil)
    var window = sb?.instantiateControllerWithIdentifier("pref") as NSWindowController

    var tabs = window.window?.contentViewController as NSTabViewController
    XCTAssertNotNil(tabs, "Preferences window NSTabViewController must not be nil.")

}

func testPreferencesTabViewStyleIsToolBar() {
    var sb = NSStoryboard(name: "Main", bundle: nil)
    var window = sb?.instantiateControllerWithIdentifier("pref") as NSWindowController

    var tabs = window.window?.contentViewController as NSTabViewController
    XCTAssert(tabs.tabStyle == NSTabViewControllerTabStyle.Toolbar, "Preferences window NSTabViewController tab style must be Toolbar.")
}

func testFirstPreferencesTabViewIsGeneral() {
    var sb = NSStoryboard(name: "Main", bundle: nil)
    var window = sb?.instantiateControllerWithIdentifier("pref") as NSWindowController
    var tvc = window.window?.contentViewController as NSTabViewController
    var tvi = tvc.tabViewItems[0] as NSTabViewItem

    XCTAssert(tvi.viewController? is GeneralPreferencesViewController, "First Preferences Tab must be General Preferences")
    XCTAssert(tvi.label == "General" , "First Preferences Tab must have title ")

}

這主要是測試Interface Builder的配置,因此,我們是否應該假設一切都已正確配置?

對我來說,這似乎是您在嘗試驗證和測試您的用戶界面。 我認為更好的方法是使用UIAutomation工具 另外,我強烈建議將tuneup_js庫一起使用。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM