現在、クラス内のプライベート最終静的オブジェクトをモックしようとしています。私のオブジェクトが適切に嘲笑されているようには見えません。
例:
コード: メイン クラス内
public class Main {
private final static serviceA obj = new serviceA();
public somemethod { return true; }
}
嘲笑:私のテストクラスでは
Public class TestMain {
private Main mainObj;
private static serviceA obj;
@Before
public void setupBeforeTest() {
obj = Mockito.mock(serviceA.class);
PowerMockito.whenNew(serviceA.class).withNoArguments().thenReturn(obj);
mainObj= Mockito.spy(new Main());
}
}
しかし、obj は実行時に指定した値を返しません
Mockito.when(obj.returnsFalseMethod()).thenReturn(false);
実際に のコードを実行しますobj.returnsFalseMethod()
。
また、メインクラスのコードを変更することはできません。ありがとうございます。