Mockito実行時エラーの対処法

Mockito実行時エラーの対処法を随時更新していきます。

Checked exception is invalid for this method!

実行コード

doThrow(new Exception("test")).when(hoge).fuga(); 

エラーログ

org.mockito.exceptions.base.MockitoException: 
Checked exception is invalid for this method!
Invalid: java.lang.Exception: test

原因と対処法

// NG
// 検査例外(Exception系)のthrows宣言がないメソッドに対して、doThrowで検査例外をスローできない
doThrow(new Exception("test")).when(hoge).fuga();

// OK
// 非検索例外(RuntimeException系)ならスローできる
doThrow(new RuntimeException(new Exception("test"))).when(hoge).fuga();

参考 Android開発するときにテスト絡みで調べたことまとめ - リア充爆発日記