Влияние на производительность PowerMockito
У нас был следующий шаблон, и он сильно повлиял на время выполнения теста.
Я хочу понять почему.
@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 сек?