この文書の現在のバージョンと選択したバージョンの差分を表示します。
| 両方とも前のリビジョン 前のリビジョン 次のリビジョン | 前のリビジョン | ||
|
mockito [2015/10/20 19:33] sou [サンプル] |
mockito [2015/10/21 17:10] (現在) sou [メモ] |
||
|---|---|---|---|
| ライン 2: | ライン 2: | ||
| オブジェクトAが××の状態の場合, ○○の振る舞いをする... などのテストに利用する。\\ | オブジェクトAが××の状態の場合, ○○の振る舞いをする... などのテストに利用する。\\ | ||
| \\ | \\ | ||
| - | オブジェクトAをモックに置き換えることにより、オブジェクトAを任意の状態にセットアップ\\ | + | オブジェクトAの代わりにモックを使用することにより、オブジェクトAを特定の状態にセットアップ\\ |
| する処理を簡略化することができる。\\ | する処理を簡略化することができる。\\ | ||
| ===== dependencies ===== | ===== dependencies ===== | ||
| - | build.gradleのdependenciesに下記の3行を追加。Mockito本体の他にdex化のライブラリが必要な模様。\\ | + | build.gradleのdependenciesに下記の3行を追加。Mockito本体の他にdex化のライブラリが必要。\\ |
| androidTestCompile 'org.mockito:mockito-core:1.+' | androidTestCompile 'org.mockito:mockito-core:1.+' | ||
| ライン 18: | ライン 18: | ||
| ... | ... | ||
| | | ||
| - | @test | + | /** |
| - | public void something() throws Exception { | + | * モックが相互作用することを検証 |
| - | // mockオブジェクトを生成 | + | * @throws Exception |
| - | List mockedList = Mockito.mock(List.class); | + | */ |
| + | @Test | ||
| + | public void testVerify() throws Exception { | ||
| + | List mockedList = mock(List.class); | ||
| + | mockedList.add("one"); | ||
| + | mockedList.clear(); | ||
| + | |||
| + | // mockのメソッドが呼びだされていることを確認する | ||
| + | verify(mockedList).add("one"); | ||
| + | verify(mockedList).clear(); | ||
| + | } | ||
| + | |||
| + | /** | ||
| + | * スタブとして利用 | ||
| + | * @throws Exception | ||
| + | */ | ||
| + | @Test | ||
| + | public void testStub() throws Exception { | ||
| + | List mockedList = mock(List.class); | ||
| + | |||
| + | // スタブとして「first」を返すよう設定 | ||
| + | when(mockedList.get(0)).thenReturn("first"); | ||
| + | |||
| + | // JUnitで検証 | ||
| + | String str = mockedList.get(0).toString(); | ||
| + | assertEquals("first", str); | ||
| + | } | ||
| | | ||
| - | // スタブとして"first"を返すよう設定 | + | |
| - | when(mockedList.get(0)).thenReturn("first"); | + | ===== 参考URL ===== |
| - | + | Mockito API\\ | |
| - | } | + | http://site.mockito.org/mockito/docs/current/org/mockito/Mockito.html |