Я пытаюсь смоделировать один статический метод void, я пробовал PowerMock, но всегда получаю исключение NullPointer.
Мы пытаемся смоделировать вызов ниже -
public Class XYZ{
public void method1(){
....
SampleClass.methodTypeStatic1().methodTypeStatic2("xyz", "mno", classVeriable);
}
И основной класс-
public class SampleClass implements SampleClassParent{
private static SampleClass var1;
public static SampleClass methodTypeStatic1(){
if (var1 == null) {
//Do something on var1
}
return var1;
}
public void methodTypeStatic2(String localVar1, String localVar2, DifferentStaticClass localVar3) {
//Do something
}}
Я пытаюсь смоделировать вызов таким образом в моем тестовом классе -
@RunWith(PowerMockRunner.class)
@PrepareForTest({SampleClass.class})
public class XYZTest{
@InjectMocks
XYZ xyzTestService;
@Test
public void testMethod1(){
...
PowerMockito.mockStatic(SampleClass.class);
PowerMockito.doNothing().when(SampleClass.methodTypeStatic1());
xyzTestService.method1();
}
Также следует упомянуть, что SampleClass.class не является частью нашего кода, у нас естьимпортировал этот внешний класс в нашу кодовую базу для выполнения некоторой задачи.