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

Разница между заглушкой и когда в mockito

Я новичок в mockito.

нужно знать разницу между заглушкой и

      1. stub(cpproxy.getBinList()).toReturn(gettestbins());
      2. when(cpproxy.getBinList()).thenReturn(gettestbins());

В чем разница между этими двумя?

4b9b3361

Ответ 1

На самом деле они технически одинаковы. Когда Mockito был впервые создан, мы говорили о заглушках, поэтому словарь следовал этой идее. Позже люди думали, что лучше думать во взаимодействиях, а не о технических терминах, поэтому словарь следовал тогда, когда... тогда... стиль. Это изменение словарного запаса помогает людям думать о взаимодействиях, обмена сообщениями между объектом. Какая самая интересная идея (передача сообщений) на объектно-ориентированном языке (цитирование Алана Кей).

В настоящее время подход к тестированию эволюционировал до разработки, основанной на поведении (от Dan North), что почти то же самое, но еще больше фокусируется на поведении во время разработки. Чтобы отразить это мышление, люди попросили Mockito предложить API, который отражает это изменение. Таким образом, вы также используете данный... будет... стиль от BDDMockito

given(the_type.performs_that()).willReturn(something)

Это мой предпочтительный словарь, поскольку я использую тесты для управления дизайном моих объектов.