Mockitoを直接使用しない場合は、メソッド "a"に静的メソッド参照がありますか?PowerMockは基本的にスタティックメソッドをスタブしたり、プライベート変数、コンストラクタをモックするのに使用されます。クラスBのメソッドをモックし、Mockito.verifyメソッドを使用してメソッドが実際に呼び出されたかどうかを確認してください。下の私の答えを見てください。
import org.junit.Test;
import org.junit.runner.RunWith;
import org.mockito.InjectMocks;
import org.mockito.Mock;
import org.mockito.Mockito;
import org.mockito.junit.MockitoJUnitRunner;
@RunWith(MockitoJUnitRunner.class)
public class ClassATest {
@InjectMocks
ClassA classsA;
@Mock
ClassB classB;
@Test
public void testClassAMethod() {
//Assuming ClassA has one method which takes String array,
String[] inputStrings = {"A", "B", "C"};
//when you call classAMethod, it intern calls getClassMethod(String input)
classA.classAMethod(inputStrings);
//times(0) tells you method getClassBmethod(anyString()) been called zero times, in my example inputStrings length is three,
//it will be called thrice
//Mockito.verify(classB, times(0)).getClassBMethod(anyString());
Mockito.verify(classB, times(3)).getClassBMethod(anyString());
}
}
あなたは、メソッド「A」内の任意の静的メソッドのreferncesを持っています直接Mockitoを使用しない場合は、PowerMockはbascially静的メソッド、モックプライベート変数、コンストラクタをスタブするために使用されるetc..and私はあなたがやっていない願っていますクラスBのメソッドをモックしてMockito.doverifyメソッドを使ってメソッドが実際に呼び出されたかどうかを確認してください。 –