特定の静的メソッドが呼び出されているかどうかをテストするには、PowerMockito を使用する必要があります。次の PowerMockito および JUnit ライブラリを使用しています ...
- powermock-mockito-1.6.2-full.jar
- junit-4.12.jar
PowerMockito.verifyStatic() メソッドを正しく動作させるのに問題があります。次のコード例では、@PrepareForTest と mockStatic() を使用して、それらを除外しようとしました。コード例にそれらを含めます。
テスト クラス:
import org.powermock.api.mockito.PowerMockito;
import org.powermock.core.classloader.annotations.PrepareForTest;
import org.powermock.modules.junit4.PowerMockRunner;
import org.junit.Test;
import org.junit.runner.RunWith;
@RunWith(PowerMockRunner.class)
@PrepareForTest(Test1.class)
public class PowerMockTest {
@Test
public void staticVerifyTest() {
PowerMockito.mockStatic(Test1.class);
// Test
PowerMockito.verifyStatic();
//Test1.staticMethod();
}
}
テスト中のクラス:
public class Test1 {
public static void staticMethod() {
System.out.println("Static Method!");
}
}
テストは実行時に成功しますが、Test1.staticMethod() が呼び出されないため失敗するはずです。これに関する助けがあれば大歓迎です!