[英]JUnit for class with static methods with return type as String and void
下面是我的 class ,它具有 static 方法.. 一个以 void 和另一个以 String 作为返回类型。建议将不胜感激..
****************************************************************************
public class ServiceImpl {
public static String getName(){
// some business logic
Utils.doSomething();
String result = Utils.getName();
return result;
}
}
****************************************************************************
public class Utils {
public static void doSomething(){
// some DB business logic
}
public static String getName(){
// some business logic
return "Static String";
}
}
****************************************************************************
PowerMockito.spy(Utils.class);
PowerMockito.doNothing().when(Utils.class); // working
PowerMockito.when(Utils.getName()).thenReturn("TESTER"); // not working
它对我来说是这样的:
@RunWith(PowerMockRunner.class)
@PrepareForTest(Utils.class)
public class SimpleTest {
@Test
public void test() throws Exception {
PowerMockito.spy(Utils.class);
PowerMockito.doNothing().when(Utils.class, "doSomething"); // add method name
PowerMockito.when(Utils.getName()).thenReturn("TESTER");
assertEquals("TESTER", ServiceImpl.getName());
}
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.