В конце концов, что я прочитал о Injection Dependency и IoC, я решил попробовать использовать Windsor Container в нашем приложении (это многослойное веб-приложение 50K LOC, поэтому я надеюсь, что это не перебор). Я использовал простой статический класс для упаковки контейнера, и я инициализирую его при запуске приложения, которое сейчас работает отлично.
Мой вопрос об модульном тестировании. Я знаю, что DI собирается сделать мою жизнь намного легче там, предоставив мне возможность впрыскивать программы-заглушки/макеты учеников класса в тестируемый класс. Я уже написал пару тестов, используя эту технику, и, похоже, это имеет смысл для меня. Я не уверен в том, должен ли я использовать IoC (в данном случае Windsor Castle) также в модульных тестах (возможно, как-то настроить его для возврата заглушек/макетов для моих особых случаев) или лучше подключить все зависимости вручную в тестах. Как вы думаете, и какая практика сработала для вас?