我發現代碼將導致測試失敗如果它運行的時間超過timeout
毫秒。如果我想讓它通過?我有一個功能,我預計會永遠掛起。如果它掛起足夠長的時間,比如說10000毫秒,那麼我認爲它是永久懸掛的,測試應該通過。JUnit:測試應該通過,如果它掛了一段時間
@Test(timeout=10000) public void test() {
while(true)
}
我發現代碼將導致測試失敗如果它運行的時間超過timeout
毫秒。如果我想讓它通過?我有一個功能,我預計會永遠掛起。如果它掛起足夠長的時間,比如說10000毫秒,那麼我認爲它是永久懸掛的,測試應該通過。JUnit:測試應該通過,如果它掛了一段時間
@Test(timeout=10000) public void test() {
while(true)
}
你說你要test that querying a closed connection will hang forever. (The code retries establishing the connection forever)
所以,你要永遠掛程序,每次有人試圖查詢關閉的連接?
我最好在連接關閉時拋出異常。
除了該方法永不返回,您的測試會如何確認? – Aelexe
我想測試一下,查詢關閉的連接將永遠掛起。 (代碼重試永久建立連接)。 – Ben
有一個很好的概念叫**快速失敗**。當事情破裂時,你想盡快回來。其他任何只是**增加**你的問題。 – GhostCat