作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 junit 测试类。测试类读取文件并向 telnet 服务器发送消息。处理可能需要 1 到 5 小时,具体取决于文件中的消息编号。我希望这个测试类在之后停止在属性文件中配置的一定时间。下面是我的代码。
public void sendMessage() throws InterruptedException {
final long timetorun = Long.valueOf(props.getMap().get("timetorun"))
.longValue();
try {
System.out.println("duration : " + duration);
while (duration < timetorun) {
endTime = System.currentTimeMillis();
duration = endTime - startTime;
logger.info("Sending Message");
telnetUtils.run(telnetClient);
// sendMessage();
}
} catch (Exception e) {
e.printStackTrace();
}
}
假设运行时间为 1 小时这里的问题是如果 telnetUtils.run(telnetClient);需要超过 1 小时,此逻辑将不起作用。
任何人都可以就如何实现这一目标提供一些帮助。
最佳答案
您可以在测试用例上设置超时。例如:
import org.junit.After;
import org.junit.Before;
import org.junit.Test;
public class TestTimeout {
private long startAt;
@Before
public void before() {
this.startAt = System.currentTimeMillis();
}
@After
public void after() {
System.out.println(String.format("Total time: %1$d ms", System.currentTimeMillis() - startAt));
}
@Test(timeout=1000)
public void timeout() throws InterruptedException {
Thread.sleep(2000);
}
}
由于超时,测试失败。它在标准输出中写入:
Total time: 1001 ms
关于java - Junit 想在一定时间后停止该方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12909196/
使用登录后,我想吐出用户名。 但是,当我尝试单击登录按钮时, 它给了我力量。 我看着logcat,但是什么也没显示。 这种编码是在说。 它将根据我在登录屏幕中输入的名称来烘烤用户名。 不会有任何密码。
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 这个问题似乎是题外话,因为它缺乏足够的信息来诊断问题。 更详细地描述您的问题或include a min
我是一名优秀的程序员,十分优秀!