【发布时间】:2014-12-15 11:02:36
【问题描述】:
我想运行一个在运行时定义的超时单元测试。我只想为特定测试定义超时,而不是整个班级。
我看到这些是设置超时的方法:
@Rule
public Timeout globalTimeout = new Timeout(10000); // 10 seconds max per method tested
或
@Test(timeout=100) public void infinity() {
while(true);
}
但是当我运行这段代码时,没有抛出异常。 我想确定测试因超时而失败的时间。
public Timeout testTimeout;
private void setTestTimeOut() {
if (!Strings.isNullOrEmpty(testTimeOut)) {
testTimeout = new Timeout(Integer.parseInt(testTimeOut));
}
}
如何捕捉异常?用try-catch(InterruptException)包裹main方法?
【问题讨论】:
标签: java unit-testing testing junit timeout