Насмешки носорога - различие между GenerateStub <T> и [закрытым] GenerateMock <T>

35
задан Sam Holder 9 May 2012 в 09:16
поделиться

1 ответ

вы должны использовать макет, когда собираетесь проверить, что что-то произошло с объектом, например, был вызван метод. Вам следует использовать заглушку, когда вы просто хотите, чтобы объект, участвующий в тесте, возвращал значение, но это не то, что вы тестируете. Заглушка, ожидания которой не оправдались, никогда не провалит тест.

Я думаю, что общее правило должно заключаться в том, что у вас всегда должен быть только один фиктивный объект в тесте, но может быть несколько заглушек, которые предоставляют информацию для фиктивного объекта. Я считаю, что более одного макета в тесте - это запах кода.

Хотя это и не пример Rhino , Мартин Фаулер описывает разницу

Также этот вопрос может быть полезен, как и этот

59
ответ дан 27 November 2019 в 07:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: