Java 如何使用junit Mockito测试用例调用真正的静态方法?
我需要使用mockito从junit测试方法调用实际的静态方法,即使我使用spy调用该类的实际或实际方法。我不能称之为真正的方法 这是我的实际方法Java 如何使用junit Mockito测试用例调用真正的静态方法?,java,junit,mockito,powermockito,Java,Junit,Mockito,Powermockito,我需要使用mockito从junit测试方法调用实际的静态方法,即使我使用spy调用该类的实际或实际方法。我不能称之为真正的方法 这是我的实际方法 public class Utility { public static JSONArray getDefaultPage(Set<String> files){ JSONArray pageNames = new JSONArray(); try { //code will go here }
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;
}
}
}
这是我的全部代码,当我无法调用真正的方法时。使用您迄今为止尝试过的代码更新问题,以便我们可以帮助您better@pvpkiran,我写了我的代码,到目前为止我尝试了什么,你使用的是哪个版本的powermockito,mockito?@NikhilBhide powermockito 1.6.6和junit 4.12
@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);
}