我需要使用mockito从junit测试方法调用实际的静态方法,即使我使用间谍来调用实际或真实的方法。我无法称之为真正的方法。
这是我的实际方法,
public class Utility {
public static JSONArray getDefaultPage(Set<String> files){
JSONArray pageNames = new JSONArray();
try {
//code will go here
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return pageNames;
}
}
这是我的testCase,
@PrepareForTest(Utility.class)
@RunWith(PowerMockRunner.class)
public class UtilityTest {
@Before
public void setupMock() {
PowerMockito.mockStatic(Utility.class);
MockitoAnnotations.initMocks(this);
}
@SuppressWarnings("static-access")
@Test
public void getDefaultPageListTest(){
PowerMockito.when(utilityMock.getDefaultPageList(reqSet)).thenReturn(respList);
utilityMock.getDefaultPageList(reqSet);
}
}
这是我的整个代码,当时无法调用真正的方法。