2010-08-13 53 views

回答

7

如果您使用的是NUnit 2.5,則可以使用Timeout屬性在指定的時間段之後通過測試。不幸的是,您需要自己清理所有資源 - 例如在TearDown方法中檢查過程是否正在運行並殺死它們等。

0

這看起來像是一種測試氣味。在我看來,設置超時時間,你試圖對抗症狀。單元測試應該是快速和可重現的(也是速度)。

爲什麼測試需要這麼久?它甚至是隨機「花費很長時間」(有時會執行得很快,有時不會)?

+0

他說孩子的過程。我猜想一個孩子的過程失敗了,他無法輕易發現。 – Rup 2010-08-15 10:31:05

+1

目前它總是需要一段時間。在修復之前(需要花費一些時間),我可以將其禁用或在超時時使其失效。 – 2010-08-15 10:39:44

+2

問題是,如果測試時間過長,測試失敗 - 它會使單元測試快速運行 - 如果某處的某個代碼有無限循環會怎麼樣 - 無論一切有多快,您都希望代碼快速失敗並且不要掛起構建服務器... – BrainSlugs83 2014-07-11 21:48:39

相關問題