2011-01-05 11 views
8

He estado utilizando Fitnesse.NET durante algún tiempo y ahora estoy intentando actualizar al motor fitSharp más nuevo. Sin embargo, de inmediato me topé con una barricada. Comenzando con un sistema nuevo, descargué el último fitnesse.jar y lo ejecuté/lo instalé; todas mis páginas de prueba se mostraban bien desde mi navegador.Fitnesse - Problema de configuración estándar de fitSharp con .NET 4

El problema surge cuando agrego la configuración de fitSharp a la página raíz. Intenté una variedad de combinaciones de configuración TEST_RUNNER y COMMAND_PATTERN; el resultado final fue siempre que, al ejecutar cualquier prueba, el servidor de Fitnesse nunca devolvió el resultado a mi navegador. Como referencia aquí es el contenido de mi raíz, confirmando estas definiciones de las variables que son los correctos, al menos de acuerdo con esta fitSharp configuration page:

variable defined: TEST_RUNNER=fitSharp\RunnerW.exe 
variable defined: COMMAND_PATTERN=%m -r fitnesse.fitserver.FitServer,fitSharp\fit.dll %p 

fin encontré uno troubleshooting note mencionar que RunnerW da alguna información de diagnóstico por lo que cambió a eso y recibido este mensaje de error, indicando que es aparentemente un problema que surge debido a .NET 4:

no se pudo cargar el archivo o ensamblado 'file: /// C: \ fitnesse \ fitSharp \ fit.dll' o una de sus dependencias. La operación no es compatible. (Excepción de HRESULT: 0x80131515) Nombre de archivo: 'file: /// c: \ fitnesse \ fitsharp \ fit.dll' ---> System.NotSupportedException: se intentó cargar un ensamblaje desde una red la ubicación que ha provocado que el conjunto sea espacio aislado en versiones anteriores de .NET Framework. Esta versión del .NET Framework no habilita la política CAS de forma predeterminada, por lo que esta carga puede ser peligrosa. Si esta carga no es destinada a la caja de arena del conjunto, habilite el interruptor loadFromRemoteSources. Consulte http://go.microsoft.com/fwlink/?LinkId=155569 para obtener más información.

La página de referencia de MSDN dice que necesito esto en mi fichero de configuración:

<configuration> 
    <runtime> 
     <loadFromRemoteSources enabled="true"/> 
    </runtime> 
</configuration> 

Por lo tanto, parece que tengo tres posibilidades. ¿Hay allí:

  1. ¿Una aplicación.config o equivalente donde puedo insertar esa sección de configuración?
  2. ¿Una forma de evitar que fitnesse piense que mi archivo local está en una ruta remota?
  3. ¿Una forma de habilitar la política de CAS para .NET Framework?

¡Las sugerencias serían apreciadas!

2010.01.17 Edit: Estoy usando protocolo de ajuste en lugar de protocolo delgado en mi entorno.

Respuesta

3

¡Nunca antes había visto eso! ¿Por qué cree que C: es una ubicación de red "peligrosa"? De todos modos, el ejecutable es Runner.exe (o RunnerW.exe) por lo que si creas un Runner.exe.config con la configuración anterior, debería recogerlo.

+0

Gracias, Mike, eso tuvo éxito. Pero luego me encontré con otro problema que aparentemente ha surgido antes: no se encuentra el tipo DoFixture (esto es fitsharp v1.8 para .net 4.0). Entraré en esto como una pregunta separada cuando tenga la oportunidad, ¡a menos que tengas una respuesta rápida! –

+1

Es un error: se solucionó. La solución alternativa es agregar el espacio de nombres fitlibrary al archivo de configuración del paquete. –

+0

¿Puedes aclarar la solución para "DoFixture"? No entiendo qué hacer. Gracias – nonot1

10

Sé que esto ha sido respondido pero, en mi humilde opinión hay una mejor resolución. Si 'desbloquea' fit.dll (clic derecho-> propiedades-> Desbloquear) no obtendrá el error. Ocurre debido a que los archivos descargados están bloqueados por defecto.

+0

Eso funcionó como un encanto. Gracias por compartir. – TMc