Pregunta

Debido a ciertas configuraciones en mi caja dev que se vio obligado a mover el código a los "Documents and Settings" carpetas. Desde nuestro #? * &% $ £ "amado" forzosamente VCS puede tener problemas con las rutas de archivos largos en escenarios específicos, que asigna una unidad (V :) para apuntar al código. En general, esto funciona ahora con una excepción: por alguna razón, los corredores de prueba integrados en la unidad VS no pueden ejecutar las pruebas más. Específicamente intentado esto utilizando TestDriven.NET y el corredor de prueba ReSharper. Ambos muestran el mismo comportamiento extraño: no hay errores, las pruebas se ejecutan solamente NO

.
  

0 Pasadas, 0 Error, 0 Skipped

Al abrir la solución de C: \ Documents ... y ejecute las pruebas usando dichos corredores, funciona:

  

211 pasaron, 0 Error, 0 Skipped

La primera vez que se sospecha un problema de 64 bits (estamos en Win7 último x64). Sin embargo, los conjuntos para prueba están ajustados a "Cualquier CPU", ambos corredores pueden manejar ese escenario y redirigir a los ejecutables NUnit apropiados (... por lo que yo puedo decir, me corrigen si me equivoco!). Apertura de los conjuntos de prueba con el NUnit GUI tanto desde C: \ y V: \ finas trabajo.

Sólo puedo suponer que esto tiene que ver con los corredores en VS no ser capaz de invocar pruebas cuando las rutas de archivos se refieren a una unidad asignada ... pero este sonido bastante raro, así que estaba esperando que algunos de ustedes han visto este problema antes y puede dar algún consejo.

Para hervir esto a una pregunta:
¿Alguien ha tenido alguna vez problemas con los corredores de prueba NUnit en VS 2010 no ejecución de pruebas, posiblemente debido a la solución que se está en una unidad asignada?

Win 7 Ultimate x64
VS 2010 Ultimate
NUnit 2.5.8
TestDriven.NET 3
ReSharper 5.1

¿Fue útil?

Solución 2

OK, finalmente encontró una manera de evitar esto. Mientras que en realidad no resuelve el problema con nuestro V asignada: ser duro una unidad de red, lo hace bien el trabajo si se crea la unidad asignada mediante el SUBST comandos.

La diferencia aquí es que el V: unidad fue tratado como una ubicación de red desde que cree el mapeo utilizando "unidad de red" en el menú del explorador (que creo que es equivalente a la comando NET ). Esto puede conducir a problemas de confianza cuando las asambleas se llaman entre la red y las unidades locales. Algunos chicos incluso llegaron mensajes de error durante construye a lo largo de las líneas de

  

Excepción no controlada:   System.Security.SecurityException:   Que el montaje no permite parcialmente   de confianza que llaman.

El uso de nuestros SUBST V: puntos de unidad a un local (= confiaban) ubicación, y ahora nuestras pruebas todos funcionan como se esperaba

.

Para crear una unidad asignada con SUBST, haga lo siguiente. En este ejemplo se asigna una nueva unidad virtual "V" a la ubicación de código en los usuarios (= [Yourname]) carpeta:

  

C:> subst V: C: \ Users [Yourname] \ code

Otros consejos

Yo no lo he probado. Pero sólo un pensamiento. Se puede comprobar la ruta de ejecutables para TestDriven.Net, así como NUnit. Es lo mismo que desee comprobar la referencia al proyecto de prueba. es relativa o absoluta?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top