оцепенение возвращается - PullRequest
4 голосов
/ 01 июня 2011

Я использую мокито в качестве основы для насмешек.У меня есть scenerio здесь, мой when (abc.method ()). ThenReturn (value) не возвращает значение, а возвращает ноль.

Вот как выглядит мой класс и тест.1004 *

Теперь следующий тест

@Test
public void testmethod() throws Exception{
    //arrange
    String userName = "UserName";
    ClassA request = new ClassA();
    ClassB response = new ClassB();
    response.setXXX(true);
    when(stub.callingmethod(request)).thenReturn(response);
    //act
    boolean result = fooinstance.lockLogin(userName);

    //assert
    assertTrue(result);
}

заглушка смоделирована с помощью mockito, то есть с помощью @Mock.Тест генерирует исключение NullPointerException в классе foo рядом с логическим значением retrunVal = response.isXXX ();

Ответы [ 2 ]

7 голосов
/ 01 июня 2011

сопоставление аргументов для метода stub.calling (запрос) .thenReturn (ответ) сравнивается на предмет равенства ссылок.Вы хотите более свободный матч, как это, я думаю:

stub.callingmethod(isA(ClassA.class)).thenReturn(response);
0 голосов
/ 01 июня 2011

Убедитесь, что ваш ClassA реализует свой собственный equals и что он правильно реализован.

...