NUNIT 2.5.8 REQUIES NUNIT.FRamework 2.5.5 para ejecutarse. ¡¿Cómo puede ser?! ¿Y para qué?
-
23-10-2019 - |
Pregunta
Estoy recibiendo una excepción tonta nunit.exe
Intento de lanzamiento:
System.io.filenotfoundException: no se pudo cargar archivo o ensamblaje 'nunit.framework, versión = 2.5.5.10112, cultura = neutral, publickeyToken = 96d09a1eb7f44a77' o una de sus dependencias. El sistema no puede encontrar el archivo especificado.
La versión de Nunit es 2.5.9
, instalado en el paquete MSI, es decir, diferentes versiones! Poner la biblioteca en la raíz del ejecutable no ayudó. (El mismo error para 2.5.5
).
¿¿Cómo puede ser??
Solución
¿Puede ser que está tratando de cargar automáticamente un ensamblaje de prueba que se compiló con Nunit 2.5.5?
En ese caso, preferiría poner el Nunit Dll faltante alonside el ensamblaje de la prueba, en lugar del corredor de nunit. (Al hacer que parte del proceso de compilación. En VisualStudio, establezca la propiedad copilocal en verdadero para la referencia de ensamblaje de NUNIT.FRameWork, si está utilizando VS, es decir))
Otros consejos
La aplicación NUNIT carga dinámicamente los marcos NUNIT, así que observar los ensamblajes de referencia estáticamente no es de mucha ayuda.
Usando el visor de registro de enlace de ensamblaje podría proporcionar información más detallada sobre qué ensamblajes solicitan el ensamblaje 2.5.5.
Actualizar: Simplemente rastreó todas las fijaciones de ensamblaje realizadas por NUNIT 2.5.9 usando el visor log. Sin conjuntos de prueba cargados inmediatamente, el ensamblaje NUNIT.Framework nunca se carga. Los conjuntos de núcleo de NUNIT se cargan de curso, pero solo 2.5.9 versiones.
Tuve este problema, cuando tenía "copiar local" a verdadero y a Nunit referenciado a una ruta estática. Cuando actualicé NUNIT, actualicé la DLL en la ruta, pero en el archivo de proyecto real (CSProj), todavía tenía la referencia de incluir la versión como la versión anterior. Eliminarlo manualmente y luego volver a admitirlo, lo arregló.