2012-01-03 10 views
9

Estoy intentando escribir pruebas de integración para cubrir una gran refacturación de mi aplicación (me gustaría escribir pruebas unitarias, pero está bastante lejos de ser comprobable por unidad). Estoy usando Visual Studio 2010 SP1, Resharper y NUnit.Obtener el directorio de un ensamblaje a partir de una prueba automatizada

Mi problema actual es que no puedo encontrar una manera consistente de obtener el directorio del ensamblado de ejecución; Los dos métodos que probé funcionan al ejecutar la aplicación por sí solo o al depurar desde Visual Studio, pero fallan al ejecutar la prueba desde NUnit o Resharper. Aquí está el código (VB.NET):

'Method 1  
Core.ConfigFile = My.Application.Info.DirectoryPath + "\" + DRA_CONFIG_FILE 
'Method 2 
Core.ConfigFile = IO.Path.GetDirectoryName(Reflection.Assembly.GetExecutingAssembly().Location) + "\" + DRA_CONFIG_FILE 

Cuando puedo depurar la prueba usando ReSharper, me sale algo como esto, con ambos métodos:

C:\Documents and Settings\Tomas\Local Settings\Temp\0xl3rbd5.4qn\MGClient.Test\assembly\dl3\2a373977\60b182bb_e5c9cc01\DRA.config 

(que debería ser D: \ SVN .DRA.WorkingCopy \ DRA.Test \ Integration \ MGClient.Test \ bin \ Debug \ DRA.config)

¿Cómo puedo obtener la ruta correcta?

+0

1 para darse cuenta de que usted debe tener las pruebas en el lugar antes de refactorización. –

Respuesta

8

es necesario deshabilitar la copia sombra en Resharper:

Menú Visial Studio -> Resharper -> Opciones -> Herramientas -> Pruebas unitarias

Deseleccionar asambleas copia sombra están probando

+0

He hecho esto, pero todavía tengo el mismo problema. Incluso reinició VS y reconstruyó todo. Sin efecto. – Remy

+0

Probablemente sea mejor hacer una nueva pregunta, simplemente cuéntenos lo que ha hecho, publique un código y mencione que esta respuesta no es de ayuda. Lo siento, no puedo sugerir algo mejor. – oleksii

+0

Gracias. Pero en realidad es exactamente la misma situación. Se encontraron preguntas similares con la misma respuesta exacta. Así que parece ser el camino a seguir, pero no para mí por alguna razón :-( – Remy

1

Cuando puedo depurar la prueba usando ReSharper, me sale algo como esto, con ambos métodos:

C:\Documents and Settings\Tomas\Local Settings\Temp\0xl3rbd5.4qn\MGClient.Test\assembly\dl3\2a373977\60b182bb_e5c9cc01\DRA.config 

Desconectar de instantáneas en NUnit Test Loader Settings - Advanced

+0

+1, incluso si acepté la respuesta de oleksii (porque uso R # mucho más). Trabajó en NUnit por sí mismo. –

Cuestiones relacionadas