如何使用PowerMock模拟Thread.sleep()?如何使用PowerMock模拟Thread.sleep()?
样品接口和类:
public interface Machine {
void sleep(long millis);
}
public class MachineImpl
implements Machine {
private static final Logger logger = Logger.getLogger(MachineImpl.class);
@Override
public void sleep(long millis) {
try {
if (millis > 0) {
logger.trace(String.format("Try to sleep for %d millis...", millis));
Thread.sleep(millis);
}
}
catch (InterruptedException e) {
logger.trace("Full exception", e);
}
}
}
由于机器是一个接口,你能不能注入一个类,它覆盖了睡眠方法的空白实现和测试通过接口? –