两个班级。家长:B。孩子:A. A.method1()改写B's。
public class B {
protected boolean method1(){...};
}
public class A extends B {
protected boolean method1(){
boolean val = super.method1();
... //very short segment of logic that doesn't affect val.
return val;
}
}
我的测试类内部:
@Test
public void testA() {
stub(method(B.class, "method1")).toReturn(true);
assertTrue((Boolean)(Whitebox.invokeMethod(A.class, "method1")));
}
断言失败(返回false)。我错过了什么吗?在此先感谢您的帮助。
答案 0 :(得分:0)
您测试的方法是非静态方法。我认为你只能为mock实例存储非静态方法。所以你不能传递Class Objects来进行存根。