如何使用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);
}
}
}
由於機器是一個接口,你能不能注入一個類,它覆蓋了睡眠方法的空白實現和測試通過接口? –