Отменить регистрацию Autofac - интеграционные тесты с DI
Я пишу интеграционные тесты для своего приложения и использую для этого свой контейнер. Я хочу иметь возможность регистрировать все компоненты, как я это делаю в режиме реального времени, а затем переопределить некоторые из компонентов и переключить их для использования реализаций заглушек.
Я не хотел бы отделять DI и иметь контейнер для тестов только потому, что я хочу проверить реальную вещь.
Делать это также кажется уродливым:
public class MyRegistrations
{
public static RegisterAll(bool isInTest= false)
{
if (isTest)
{
// Register test fakes
}
else
// Register real components
}
}
Поэтому я подумал о переопределении регистрации в моей тестовой среде. Как это должно быть сделано?
Есть ли другие лучшие способы достижения моей цели?
Спасибо