2015-01-28 3 views
1

У меня есть ниже тест, который успешно работает во время выполнения в среде IDE, но когда я МВНЫ установить не удается с ниже сообщмакет теста неудача при выполнении МВНОВ установки

org.mockito.exceptions.misusing.MissingMethodInvocationException: 
when() requires an argument which has to be 'a method call on a mock'. 

Ниже тестовый класс:

@RunWith(SpringJUnit4ClassRunner.class) 
@ContextConfiguration(loader = SpringockitoContextLoader.class,locations={"classpath:conf/test-context.xml"}) 

public class ServiceTest 
{ 
    @ReplaceWithMock 
    @Autowired 
    private Object1 object1 

    @Autowired 
    private Service service; 

    @Before 
    public void setup() 
    { 
     MockitoAnnotations.initMocks(this); 
    } 

    @Test 
    public void test() 
     {//below line is failing while doing mvn install 
     String validateMe="1234" 
     Mockito.when(object1.validate(validateMe)).thenReturn(true) 
     } 

} 

Нужна ли мне дополнительная настройка, чтобы она работала в maven?

обновление После дальнейшего анализа между поведением результатов IDE и maven.I добавлен ниже коды в методе испытаний и обнаружил, что при работе с IDE object1 приходит, как макет и возвращает истину, но при работе с мавена проверьте, что он печатается как false. Любая идея, почему это было бы haappening

new MockUtil().isMock(object1) 
+0

Вам нужно использовать @Mock вместо @ReplaceWithMock? – BretC

+0

@Bret RepaceWithMock - вещь springockito .. она хорошо работает с весенними бобами и контекстами ..... как я сказал, тестовые прогоны, как это происходит при запуске через IDE – Rips

+0

Это не выглядит правильно для меня .. это даже компилируется для тебя? Что там делает «String»? Mockito.when (object1.validate (String validateMe)). ThenReturn (true) – unigeek

ответ

0

Я обнаружил, что если я закомментировать @ReplaceByMock с equaivalent XML насмешливый конфигурации, она работает как в мавена и IDE.Strange !! эквивалент XML, как показано ниже:

<mockito:mock id="object1" class="org.fs.service.validation.Object1" /> 

обновление я сливалась код с ветки на ствол и снова подумал бежать с помощью аннотаций из trunk.I был удивлен, увидев, что working.Probably был некоторый Гоча в моей ветке, которая вызвала этот вопрос.

+0

вы должны сообщить об ошибке в проекте с воспроизводимым примером :) – Brice

Смежные вопросы