Timeout for tests

如果想把timeout太久的测试自动标记为失败,有两种方法:

1.在 @Test里加上 Timeout 参数

定义"timeout=1000“的话,如果超过1000 毫秒,failure会被一个抛出的异常触发。

import static org.junit.Assert.*; 
import org.junit.Test; 

public class TimeoutTest { 

@Test(timeout=1000) 
public void test(){ 
assertTrue("it should be true",true); 
} 
} 

2.定义Timeout 规则(应用于整个测试类)

import org.junit.Rule; 
import org.junit.Test; 
import org.junit.rules.Timeout; 

public class Timeout2 { 
public static String log; 

@Rule 
public Timeout globalTimeout=new Timeout(10000); 

@Test 
public void test01(){ 
log +="ran1"; 
for(;;){} 
} 

@Test 
public void test02(){ 
log+="ran2"; 
for(;;){} 
} 
}

 

posted @ 2015-07-11 13:45  微微微笑  阅读(171)  评论(0编辑  收藏  举报