Anular registro de Autofac: pruebas de integración con DI
Escribo pruebas de integración para mi aplicación y uso mi contenedor para esto. Quiero poder registrar todos los componentes como lo hago en la ejecución real, y luego anular algunos de los componentes y cambiarlos para usar implementaciones de stubs.
No me gustaría separar la DI y tener un contenedor para las pruebas solo porque quiero probar la cosa real.
Hacer esto también parece feo:
public class MyRegistrations
{
public static RegisterAll(bool isInTest= false)
{
if (isTest)
{
// Register test fakes
}
else
// Register real components
}
}
Así que pensé en anular los registros en mi entorno de prueba. ¿Cómo deberia hacerse?
¿Alguna otra mejor manera de lograr mi objetivo?
Gracias