我正在尝试为getNumber方法的Student类编写一个测试用例。并且,它必须调用Enrollment类的最终静态方法。在我的junit中,我使用了PowerMock来模拟静态调用,但是它没有返回注册实例,而是返回了空值。
public class Student{
public static String getNumber(){
Enrollment enroll = Enrollment.getInstance("xyz");
return "123";
}
}
public class Enrollment {
public static final Enrollment getInstance(String id){
return new Enrollment;
}
}
测试:
@RunWith(PowerMockRunner.class)
@PrepareForTest({Student.class, Enrollment.class})
public class StudentTest{
@Test
public void testGetNumber(){
PowerMockito.mockStatic(Enrollment.class);
Enrollment enrollment = PowerMockito.mock(Enrollment.class);
PowerMockito.when(Enrollment.getInstance(Mockito.anyString())) .thenReturn(enrollment);
Student.getNumber();
Mockito.verify(Enrollment.getInstance(Mockito.anyString()));
}
}
有人可以帮忙吗?