2016-04-20 7 views
0

Если у меня естьДразнящих статический метод класса, который находится внутри, не статический класс

public class ServiceParameters { 

    private String ABC; 

    public ServiceParameters(ServiceParametersBuilder builder) { 
     this.ABC = builder.ABC; 
    } 

    public static class ServiceParametersBuilder { 
     private String ABC; 

     public ServiceParameters build() { 
      return new ServiceParameters(this); 
     } 
    } 
} 

и код, который вызывается, в другом месте

serviceParameters = new ServiceParameters.ServiceParametersBuilder().build(); 

Как поиздеваться, так что приведенный выше код возвращает меня издевается ServiceParameters с помощью EasyMock и PowerMock?

ответ

0

Вы не объясняете, что должно быть вашим тестом. Во всяком случае, нет необходимости издеваться над ServiceParameters: он ничего не делает, что нужно заменить (или высмеять в терминах модульного теста). Вы можете просто создать его и продолжить свой тест. Если ServiceParameters бы метод:

public int someMethod()... 

который читает файл или запросы из базы данных или вызовов на службу третьей стороны и т.д. это может быть издевались для испытаний, как это:

public class TestServiceParameters { 
    @Mock 
    ServiceParameters parametersMock; 

    @Test 
    public void test() { 
     Mockito.when(parametersMock.someMethod()).thenReturn(1); 
     //.... test stuff here 
    } 
} 

У меня есть еще несколько примеров here.