私は今ユニットテストを書いています。実装のタイムアウト処理をテストするために、Mockito を使用して長期実行メソッドをシミュレートする必要があります。Mockitoで可能ですか?
このようなもの:
when(mockedService.doSomething(a, b)).thenReturn(c).after(5000L);
必要な時間だけスレッドをスリープ状態にすることができます。注意してください - そのようなことは自動テストの実行を本当に遅くする可能性があるので、そのようなテストを別のスイートに分離したいかもしれません
これは次のようになります。
when(mock.load("a")).thenAnswer(new Answer<String>() {
@Override
public String answer(InvocationOnMock invocation){
Thread.sleep(5000);
return "ABCD1234";
}
});