Я не играю достаточно с этим и обычно использую mocks, но мне интересно, каковы различия между этими двумя и когда использовать тот или иной из Rhino Mocks.
Update:
Я также нашел ответ на свой вопрос в слова Айенде:
Разница между окурками и mocks
Вы можете получить фактическое определение этих терминов в этой статье: Mocks Are not Stubs. Я хочу сосредоточиться на различии с точки зрения Rhino Mocks.
Макет - это объект, на который мы можем установить ожидания, и который будет проверять, что ожидаемые действия действительно произошли. Штук - это объект, который вы используете для перехода к тестируемому коду. Вы можете настроить на него ожидания, поэтому он будет действовать определенным образом, но эти ожидания никогда не будут проверены. Свойства заглушки будут автоматически вести себя как обычные свойства, и вы не можете установить на них ожидания.
Если вы хотите проверить поведение тестируемого кода, вы будете использовать макет с соответствующим ожиданием и убедитесь в этом. Если вы хотите просто передать значение, которое может потребоваться для определенного действия, но не в центре внимания этого теста, вы будете использовать заглушку.
ВАЖНО: заглушка никогда не приведет к сбою теста.