我有一个 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();
}
}
假设 timetorun 是 1hr 这里的问题是如果 telnetUtils.run(telnetClient); 需要超过 1 小时这个逻辑不起作用。
任何人都可以就如何实现这一目标提供一些帮助。