我正在閱讀一本關於Swift中測試驅動開發的書。我的最終目標是更好地理解OOP體系結構。在我讀這本書的時候,最早的一節講述了setUp()方法在每個測試方法之前被觸發,我明白做的是設置對象以運行測試以獲得通過或失敗的結果。我不確定的是,從架構的角度來看,這甚至是可能的?蘋果公司如何能夠制定出一種在班級中每一種其他方法之前都被解僱的方法?在調用每個測試方法之前,如何調用setUp()方法?
下面是一些示例代碼:
import XCTest
@testable import FirstDemo
class FirstDemoTests: XCTestCase {
override func setUp() {
super.setUp()
// Put setup code here. This method is called before the invocation of each test method in the class.
}
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() {
// This is an example of a functional test case.
// Use XCTAssert and related functions to verify your tests produce the correct results.
}
func testPerformanceExample() {
// This is an example of a performance test case.
self.measure {
// Put the code you want to measure the time of here.
}
}
}
謝謝,如果是這種情況,那麼我該如何理解UIViewController的方法是如何被觸發的?例如,我相信ViewDidLoad()是由運行時環境自動觸發的。但是,我們所說的「自動」是指什麼,我正在考慮某個地方的某個地方是否調用了這種方法,我想知道在哪裏瞭解更多信息。我希望這是有道理的 –