複数回呼び出すことができるモック オブジェクトのメソッドがあります (再帰を考えてください)。メソッドは次のように定義されます。
public void doCommit() { }
失敗するように伝えるために、次の規則を使用します。
doThrow(new RuntimeException()).when(mMockedObject).doCommit();
ただし、これにより、メソッドは呼び出されるたびにこの例外をスローします。たとえば、1回目と3回目に呼び出されたときにのみスローするようにするにはどうすればよいですか? つまり、たとえば、2 回目と 4 回目は、例外をスローせずに返されるだけです。私は doCommit() の作成者ではなく、変更できるソース コードも持っていないことに注意してください。