有没有办法用EasyMock模拟超类调用?
我想测试这样的东西。
public class A extends B {
@Override
public String getName() {
String bClassName = super.getName();
String aClassName = "Class A";
return aClassName + " -> " + bClassName;
}
}
public class B {
public String getName(){
return "Class B";
}
}
public class ATest extends TestCase {
private A a = new A();
@Test
public void testGetName() {
A partialMockA = EasyMock.createMockBuilder(A.class)
.addMockedMethod("getName").createMock();
// expect b.getName();
replay(partialMockA);
String name = partialMockA.getName();
assertEquals("Class A -> <MockResult>", name);
verify(partialMockA);
}
}
我正在玩partialMocks,但我认为这不是正确的做法。
答案 0 :(得分:0)
没有。不是EasyMock。您需要添加PowerMock才能执行此操作。例如,你可以抑制超级电话(据我所知,但我手边没有一个例子)。