時間限制 Timeout

有時候不小心會寫出造成無窮迴圈的程式碼,或是我們希望一段程式碼執行的時間不能超過某個限制(例如說1秒鐘), 可以在@Test後面加上timeout參數,當執行時間超過timeout時,JUnit會中斷測試並且跳出測試失敗訊息。

下面程式碼會有一段無窮迴圈,當程式執行超過1秒鐘,會出現測試失敗訊息。

package yan.junit;
import org.junit.Test;
/**
 * 時間限制測試
 */
public class Timeout {
    @Test(timeout = 1000) // 單位為ms,1000ms = 1s
    public void timeout(){
        System.out.println("Hello JUnit");
        while(true);
    }
}

測試結果

Timeout

results matching ""

    No results matching ""