Actualmente estoy utilizando la versión 2.1 de Castle Windsor como mi contenedor y me gustaría realizar pruebas de integración utilizando los servicios registrados con ella.Pruebas de integración NUnit e inyección de dependencia
Actualmente, hago esto mi utilizando el Common Service Locator para recuperar mi instancia de servicio y realizar mis pruebas de integración en contra de ella como tal:
var myService = ServiceLocator.Current.GetInstance<IMyService>();
// do stuff with myService
Lo que había idealmente gusta hacer es tener mis dependencias de servicio inyectan en mi accesorio de prueba NUnit automáticamente. Spring parece ofrecer this functionality, pero no puedo encontrar nada similar usando Castle.
¿Alguien puede indicarme la dirección correcta?
Editar:
Estoy seguro de que todo el mundo tiene puntos (válidos) sobre si es o no es una buena idea; supongamos que está en este escenario ... ¿Alguien puede decirme cómo se pudo lograr usando Windsor?
se requieren sus servicios para las pruebas unitarias? ¿Has intentado utilizar un marco simulado como Moq, RhinoMocks o NMock? si realmente está probando la * integración * entre un componente y un servicio, simplemente cree tantos archivos de configuración de Castle como sea necesario y cárguelos con XmlConfigurator en su contenedor de Castle simple o personalizado –
@johnny g: estoy realizando pruebas de INTEGRACIÓN; lo que significa que no quiero hacer uso de simulacros, sino de los servicios reales junto con todas sus dependencias reales.Utilizo burlas en mis accesorios de prueba de la unidad como sugirió. – DanP
eep! eso es embarazoso: lee NUnit y de repente "viste" la unidad de prueba en todas partes, cuando claramente eres bastante explícito sobre la integración :) –