Создание насмешки над IEmailer само по себе не раскрывает слишком много класса. Скорее, он делает его открытым для расширения .
Существует определенная тенденция, которая в значительной степени зависит от тестирования, основанного на взаимодействии (то есть имитирует), делает тесты более хрупкими, но это скорее проблема проектирования, чем проблема с имитациями.
Голливудский принцип может быть очень полезен здесь, потому что, если ваши зависимости в основном разработаны вокруг void
методов, динамические mock, такие как Moq или Rhino Mocks, как правило, просто игнорируют вызовы методов, если вы специально не скажете им заботиться о конкретном.