Tengo un ensamblado que hace referencia a NUnit y crea una única clase de prueba con un único método de prueba. Puedo obtener la ruta del sistema de archivos a este ensamblado (por ejemplo, "C: ... \ test.dll"). Me gustaría usar programáticamente NUnit para ejecutar contra este ensamblado.Cómo ejecutar NUnit mediante programación
hasta ahora tengo:
var runner = new SimpleTestRunner();
runner.Load(path);
var result = runner.Run(NullListener.NULL);
Sin embargo, llamando runner.Load (ruta) emitirá una excepción FileNotFound. Puedo ver a través del seguimiento de la pila que el problema es con NUnit llamando a Assembly.Load (ruta) por la pila. Si cambio la ruta de acceso a algo así como "Prueba, Versión = 1.0.0.0, Cultura = neutral, PublicKeyToken = null", entonces sigo recibiendo el mismo error.
He agregado un controlador de eventos a AppDomain.Current.AssemblyResolve para ver si puedo resolver este tipo manualmente, pero nunca se llama a mi controlador.
¿Cuál es el secreto para hacer que Assembly.Load (...) funcione?
Al final, mi solución era sólo tiene que utilizar XUnit. NUnit es un poco rudo. –