我正在尝试使用JMockit来模拟类的受保护方法:
public class A {
protected String say() {
return "hi";
}
}
public class B extends A {
public String cry() {
return "waaaa " + say();
}
}
我想在我的测试中模拟“说”方法,以便B的每个实例,当它调用“说”时,它将获得“再见”而不是“hi”。
感谢。
答案 0 :(得分:4)
你可以简单地制作一个A:MockUp:
new MockUp<A> () {
@Mock protected String say() { return "bye"; }
};
System.out.println(new B().cry()); // prints waaaa bye