[英]Stubing a static private method inside a Utils class with powermockito
我有以下流程:
manager.getObject.doSomthing();
在doSomething()从Utils类调用静态函数的情况下,该函数又调用了私有静态函数,例如:
public class obj {
public void doSomething(){
Utils.do();
}
}
public class Utils {
public static void do(){
int test = doPrivate();
...
~do unrelated computation~
...
}
private static int doPrivate(){
return someComplexMethod();
}
}
而且我想模拟doPrivate,因此我仍然能够测试do()
方法
用powermockito可以实现吗?
使用powermock-api-mockito可以实现此目的。 您可以模拟类的特定静态方法。 语法如下:
import static org.powermock.api.support.membermodification.MemberMatcher.method;
import static org.powermock.api.support.membermodification.MemberModifier.stub;
stub(method(Utils.class, "doPrivate")).toReturn(response);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.