Thread.sleep()をPowerMockでモックする方法は?Thread.sleep()をPowerMockでモックする方法は?
サンプルインターフェースとクラス:
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);
}
}
}
Machineはインターフェイスなので、sleepメソッドをオーバーライドするクラスを空の実装に挿入してインターフェイス経由でテストすることはできませんか? –