2016-06-13 35 views
3

我在調查Alamofire如何執行NSOperation的單元測試。這是其他測試使用的基本測試類。任何想法爲什麼它使用30秒爲timeout期望?爲什麼Alamofire對單元測試的超時期望值使用30秒?

import Alamofire 
import Foundation 
import XCTest 

class BaseTestCase: XCTestCase { 
    let timeout: NSTimeInterval = 30.0 

    func URLForResource(fileName: String, withExtension: String) -> NSURL { 
     let bundle = NSBundle(forClass: BaseTestCase.self) 
     return bundle.URLForResource(fileName, withExtension: withExtension)! 
    } 
} 

回答

1

我們使用30秒作爲標準超時。現在,在本地運行時比您需要的時間要長,但在CI環境(如Travis-CI)上運行速度始終較慢。因此,我們提高了默認的超時時間,讓較慢的機器有更多的時間來處理測試。

+0

感謝您的回覆。我問這個問題,因爲我試圖在Circle CI中單元測試一個自定義的'NSOperation',但是我有一個超時問題。 –

+1

Gotcha。我首先會提高暫停時間,看看你會得到什麼。 – cnoon

+0

謝謝。因此,問題可能是由於Circle CI中的資源較少(與本地相比)。 –