Java Mockitのテストのサンプル

JavaのMockitのテストのサンプルです。
JUnit4の設定とテストコードの実行についてはJava JUnit4のテストのサンプルを参照願います。

確認環境
・Eclipse4.8
・Java 8
・mockit-1.10.19
・junit-4.12

目次

1.Mockit

  • モックを作成できます。
  • スタブを作成できます。
  • 以下は、mockitのリンクです。
    https://site.mockito.org/

2.jarファイルの取得

Maven

pom.xmlに2~8行目を追加します。1,9行目がない場合は1,9行目も追加します。

<dependencies>
	<!-- https://mvnrepository.com/artifact/org.mockito/mockito-all -->
	<dependency>
	    <groupId>org.mockito</groupId>
	    <artifactId>mockito-all</artifactId>
	    <version>1.10.19</version>
	    <scope>test</scope>
	</dependency>
</dependencies>

jarファイル

jarファイルは、MavenRepositoryのサイトにあります。
https://mvnrepository.com/artifact/org.mockito/mockito-all/1.10.19

以下の図の「Files」の横にあるjarをクリックするとjarファイルをダウンロードできます。

Eclipseで、jarファイルをクラスパスに追加する場合は以下を参照願います。
Eclipse 外部jarファイルをクラスパス(ビルドパス)に設定する方法参照。

 

3.テストするコード

以下のクラスに対してテストします。
メソッドの戻り値はnullです。

package test1;

public class Test1  {
	String runSample(String a) {
		// 未実装
		return null;
	}
}

4.モックを作成する

モックを作成します。

package test1;
import org.junit.Test;
import static org.mockito.Mockito.*;
import static org.junit.Assert.*;

public class Test1Test {
	@Test
	public void test() {		
		//モックを作成
		Test1 test = mock(Test1.class);
		
		test.runSample("one");
		verify(test).runSample("one");
	}
}

9行目は、mockでTest1クラスのモックを作成します。
13行目は、verifyで引数がoneであることを確認しています。引数が異なっているとエラーになります。

 

5.スタブを作成する

スタブを作成します。

package test1;
import org.junit.Test;
import static org.mockito.Mockito.*;
import static org.junit.Assert.*;

public class Test1Test {
	@Test
	public void test() {		
		//モックを作成
		Test1 test = mock(Test1.class);
		
		test.runSample("one");
		verify(test).runSample("one");
		
		// スタブを作成
		when(test.runSample("one")).thenReturn("OK");
		when(test.runSample("two")).thenReturn("NG");
		
		assertEquals("OK", test.runSample("one")); //成功
		assertEquals("NG", test.runSample("two")); //成功
	}
}

16,17行目は、whenでスタブを作成しています。runSampleメソッドの引数が指定の値の場合、thenReturnの引数が戻ります。

以下は、エラーが無い時の図です。

以下は、エラーのときの図です。

関連の記事

Java JUnit4のテストのサンプル
Java assertThatメソッドのサンプル
Java JMockitのテストのサンプル
Java Eclipseでカバレッジを取得するサンプル

△上に戻る