Я новичок в mockito.
нужно знать разницу между заглушкой и когда
1. stub(cpproxy.getBinList()).toReturn(gettestbins());
2. when(cpproxy.getBinList()).thenReturn(gettestbins());
в чем разница между этими двумя?
Я новичок в mockito.
нужно знать разницу между заглушкой и когда
1. stub(cpproxy.getBinList()).toReturn(gettestbins());
2. when(cpproxy.getBinList()).thenReturn(gettestbins());
в чем разница между этими двумя?
Собственно технически они одинаковы. Когда впервые был создан Mockito, мы говорили о заглушках, поэтому словарь соответствовал этой идее. Позже люди подумали, что лучше думать в взаимодействиях, чем в технических терминах, поэтому словарь соответствовал стилю когда ... тогда ... . Это изменение словарного запаса помогает людям думать о взаимодействиях, обмене сообщениями между объектами. Какая самая интересная идея (передача сообщений) в объектно-ориентированном языке ( цитируя Алана Кея).
В настоящее время подход к тестированию превратился в разработку, основанную на поведении (от Дэна Норта), что почти то же самое, но еще больше внимания уделяется поведению во время разработки. Чтобы отразить это мышление, люди попросили Mockito предложить API, отражающий это изменение. Так что вы также используете стиль given ... will ... из BDDMockito
given(the_type.performs_that()).willReturn(something)
Это мой любимый словарь сейчас, поскольку я использую тесты для разработки дизайна своих объектов.
BDDMockito
given
/ when
стиль - это просто псевдонимы, и они основаны на одном техническом коде. В Mockito 2.x BDDMockito
предлагает дополнительные методы, позволяющие разработчику использовать разработку, управляемую поведением, в большем количестве мест, особенно для проверки, в то время как API не так симметричен в этом случае, внутреннее устройство остается прежним.
- person Brice; 13.09.2018