我现在有一些使用 PowerMock 和 Mockito 来“模拟对象”的测试。问题是,所有这些测试一遍又一遍地创建相同的模拟。是否有可能有一个抽象类,我的测试从中派生预先模拟这些对象?
例子 :
public abstract class AbstractTest {
    public void initialize() {
        PowerMockito.mockStatic(StaticMock.class);
        when(StaticMock.doSomething()).thenReturn(true);
    }
}
@RunWith(PowerMockRunner.class)
@PrepareForTest(StaticMock.class) // BanManager.class contains static methods
public class Test extends AbstractTest {
    @SuppressWarnings("serial")
    @Test
    public void testWithPerms() {
        initialize();
        SomeObject obj = new SomeObject();
        obj.doSomething();
        PowerMockito.verifyStatic();
        Static.verifyIsCalled();
    }
}
我怎么能做类似上述实际工作的事情?这给了我不一致的堆栈图帧
编辑:谢谢你的回答。我的问题实际上是由于我使用了与 java 7 不兼容的 PowerMock 版本。不过,您的指示会有所帮助。