Edited at

Mockitoチートシート


Mockitoって?

Javaのテスト環境で、モジュールの振る舞いを「モック化」する事ができる。

基本的には以下の流れで使用できる。

1. 対象クラス、インターフェイスを指定しモックオブジェクトを取得。

2. モックオブジェクトの振る舞いを設定(オプション)

3. バリデーション


モック化

mockメソッドを使用する場合

List mockedList = mock(List.class);

@Mockアノテーションを使用する場合

public class HogeTest {

@Mock List list;

@Before
public void before() {
MockitoAnnotations.initMocks(this);
}

}


振る舞いを設定

戻り値を設定

when(mockedList.get(0)).thenReturn("zero");

例外のスローを設定

when(mockedList.get(1)).thenThrow(new IllegalArgumentException());


バリデーション

メソッドの呼び出しを確認

verify(mockedList).get(0);

メソッドの呼び出しを確認(非同期)

verify(mockedList, timeout(1000)).get(0);


参考資料