6

我们有以下模式,它对测试执行时间产生了巨大的影响。

我想明白为什么。

@RunWith(PowerMockRunner.class)
@PrepareForTest(SomeSingleton.class)
public class SomeTest {

@Before
public void setUp() throws Exception {
    PowerMockito.mockStatic(SomeSingleton.class);
    Mockito.when(SomeSingleton.getInstance()).thenReturn(new SomeSingleton());
}

SomeSingleton 类是非常传统的,并且(不是开玩笑)从 spring 容器中获取它的共享实例。

备注:我为实例添加了一个公共静态设置器(破坏了单例的想法)但为此赢得了 25 秒!

问题:“PrepareForTest”和“mockStatic”究竟做了什么需要 25 秒?

4

0 回答 0