前提・実現したいこと
Jmockit、hamcrestを用いた単体テストの勉強をしています。
モック化を用いたテストを実施したいのですがモック化が上手くいきません。
発生している問題・エラーメッセージ
java.lang.NullPointerException
該当のソースコード
Java
1public class A { 2 public int mult() { 3 return B.num()*2; 4 } 5} 6----------------- 7public class B { 8 public static int num() { 9 return 5; 10 } 11} 12 13-------------------- 14import static org.hamcrest.CoreMatchers.*; 15import static org.junit.Assert.*; 16 17import org.junit.Test; 18 19import mockit.Injectable; 20import mockit.Tested; 21 22public class ATest { 23 @Tested 24 A a; 25 26 @Injectable 27 B b; 28 29 @Test 30 public void test() { 31 new Expectations() { 32 { 33 B.num(); result = 5; times = 1; 34 } 35 }; 36 int ans = a.mult(); 37 assertThat(10, is(ans)); 38 } 39 40} 41
試したこと
モック化に関わるコードを外した時はしっかり動きます。
補足情報(FW/ツールのバージョンなど)
eclipse, jdk-11, Jmock4,
回答1件
あなたの回答
tips
プレビュー