Подтвердить что ты не робот

Mockito - что делает метод проверки?

Скажем, у меня есть следующий тестовый код, похожий на psuedo:

 //Let import Mockito statically so that the code looks clearer
 import static org.mockito.Mockito.*;

 //mock creation
 List mockedList = mock(List.class);

 //using mock object
 mockedList.add("one");
 mockedList.clear();

 //what do these two verify methods do ?
 verify(mockedList).add("one");
 verify(mockedList).clear();

Я продолжаю показывать пройденный тест, но я не знаю, что означает проверка? что это точно проверяет? Я понимаю, что я издевался над призывом добавить и очистить, но что делают два подтверждения звонков?

4b9b3361

Ответ 1

Mockito.verify(MockedObject).someMethodOnTheObject(someParametersToTheMethod); проверяет, что методы, которые вы вызывали на ваш издеваемый объект, действительно вызываются. Если они не были вызваны или вызваны с неправильными параметрами, или вызвали неправильное количество раз, они не пройдут тест.

Ответ 2

Он утверждает, что метод был вызван и с этими аргументами.

Комментарий:

//mockedList.add("one");

Или измените его аргумент, и тест завершится с ошибкой.