2017-05-28 87 views
0

我正在學習iOS,現在有一個爲應用程序構建UITest的問題。下面粘貼的代碼將編譯,如果我刪除了var viewController:ViewController!字段,但添加它時失敗。當我點擊錯誤信息時,它會將我帶到PasswordManagerUITests項目的「Build Phases」部分。我在下面的項目中包含了錯誤和Build階段的屏幕截圖。clang:錯誤:鏈接器命令失敗,退出代碼1(使用-v查看調用); 「__TMaC15PasswordManager14ViewController」,引用自:

import XCTest 

@testable import PasswordManager 

class ViewControllerTestCase: XCTestCase { 

var viewController: ViewController! 

override func setUp() { 
    super.setUp() 
} 

override func tearDown() { 
    // Put teardown code here. This method is called after the invocation of each test method in the class. 
    super.tearDown() 
} 

func testExample() { 
    // Use recording to get started writing UI tests. 
    // Use XCTAssert and related functions to verify your tests produce the correct results. 
} 

} enter image description here

enter image description here

回答

0

這是因爲視圖控制器(這是內PasswordManager一類吧?)是不可用的UI測試水平。而且它不應該。 您在UI測試中不需要@testable import PasswordManager。在UI測試中,您僅測試UI元素(XCUIElement對象),而不是來自應用程序本身的類。

如果你想測試你的應用類,那麼你想寫單元測試而不是UI測試。

相關問題