2012-04-15 24 views
6

Esto es lo que estoy haciendo cuando construyo mi proyecto de prueba:VS 11 Beta no se puede iniciar el proceso debido a un nombre de archivo no se ha proporcionado

VS 11 Unit Testing Unexpected Error

con esto que soy incapaz de ejecutar mis pruebas ya que no están siendo descubiertos por VS.

Consulte el mensaje "Unexpected error detected. Check the Tests Output Pane for details." en la parte inferior de la ventana. Ahora, si miras el panel Pruebas de SALIDA, no tendrás ni idea de cuál es el problema. Esto es extremadamente útil ... :)

sé VS 11 está en fase beta, pero que solía trabajar ...

ya he reiniciado VS pero no funciona después de eso también.

¿Alguna idea sobre lo que está pasando? ¿Sería un error en alguna parte?

Nota: lo único que puedo pensar está relacionado con la desinstalación de VS 2010 que hice hace algún tiempo. Tal vez desinstaló algunos bits necesarios. Ni idea ...

EDIT 1
que acabo de hacer una reparación en VS 11 Beta último. Pidió reiniciar la computadora una vez y lo hice. Luego continuó la reparación pero siguió trabajando durante más de 12 horas. Acabo de matar el proceso de reparación.

Mientras tanto, desinstalé Visual Studio 11 Express para Web. Tuve esto uno al lado del VS 11 Beta Ultimate.

Lo suficientemente loco, comenzó a funcionar nuevamente después de que hice ambas cosas. Por lo tanto, no estoy seguro de qué ha solucionado el problema: el proceso de reparación inactiva o la desinstalación de VS 11 Express para Web.

EDIT 2
Para mi decepción ahora veo esto es una cosa intermitente. Después de reiniciar VS 11 Ultimate Beta, el problema persiste. :(

EDITAR 3
Llené un Connect ticket en Microsoft pero cerraron como no reproducible.

hice un segundo intento opción VS 11 Ultimate Beta reparación y esta vez terminó como se esperaba con. Para aislar el problema, creé un nuevo proyecto de prueba con un archivo predeterminado UnitTest1.cs dentro de una nueva Solución y después de compilarlo recibí la misma pantalla de error que se muestra arriba. Por lo tanto, la opción de reparación no resolvió el problema. Parece que falta algo mi sistema.

Esta es la información para m VS ventana Acerca de:

Microsoft Visual Studio 11 
Version 11.0.50323.1 QRELB 
Microsoft .NET Framework 
Version 4.5.50131 QRELB 

Installed Version: Ultimate 

EDITAR 4
me encontré con un problema similar here pero la solución dada allí no se aplica en mi caso, ya que no tengo la DLL descrito.

EDITAR 5
Con la ayuda de Aseem Bansal's (un empleado de Microsoft), finalmente me dieron el logs y vi esta excepción:

W, 2124, 19, 2012/04/19, 11:51:32.644, 53768626724, devenv.exe, Exception occured while initialization System.InvalidOperationException: Cannot start process because a file name has not been provided. 
    at System.Diagnostics.Process.Start() 
    at Microsoft.VisualStudio.TestPlatform.Core.Utilities.CommonUtilities.LaunchProcess(String exeFileName, String commandLineArguments, String workingDirectory, IDictionary`2 environmentVariables) 
    at Microsoft.VisualStudio.TestPlatform.Client.TestRunnerServiceClient.SetupProcess(Boolean forceX86Discoverer) 
    at Microsoft.VisualStudio.TestPlatform.Client.TestRunnerServiceClient.Initialize_NoLock(Boolean forceX86Discoverer) 
    at Microsoft.VisualStudio.TestPlatform.Client.TestRunnerServiceClient.EnsureInitialized(Boolean forceX86Discoverer) 
    at Microsoft.VisualStudio.TestPlatform.Client.TestRunnerServiceClient.EnsureInitialized_NoError(Boolean forceDiscoveryInX86Mode) 

EDITAR 6
Probé la ejecución de las pruebas utilizando el mstest.exe herramienta de línea de comandos (con y sin la opción /noisolation). Las pruebas se ejecutan como se esperaba, como se puede ver here. Entonces, el problema es realmente algo dentro de VS 11 Beta.

+0

Bueno, espero que alguien pueda ayudarlo pero lo que hace es crear y ejecutar pruebas unitarias en un producto beta/inestable. ¿Puedes garantizar que las pruebas de tu unidad funcionen como se supone que deben funcionar? Dado que Visual Studio en sí no está listo para producción, supongo que tampoco el marco de prueba de la unidad es ... –

+0

¿Puede darnos un poco más de información sobre su sistema, la solución y los tipos de proyectos? ¿Hay otras versiones de VS instaladas? –

+0

@PeterProvost: uso un Mac mini con sistema operativo MAC y, por lo tanto, tengo Windows 7 ejecutándose dentro de una máquina virtual Parallels 7. => VS 11 Ultimate Beta solución con 3 proyectos (1 ASP.NET MVC 4 + 1 Class library + 1 Test Project). Todos los proyectos construidos contra .NET Framework 4. No hay otro VS instalado. Los que tenía en paralelo fueron desinstalados como menciono en la pregunta. –

Respuesta

2

Leniel,

Gracias por resolver este problema.

Como comentamos here, indica que shadow copy está causando el problema.

Asegúrese de que el Microsoft.VisualStudio.TestPlatform.Core.dll se carga desde su ubicación de instalación %VSInstallDir%\Commmon7\IDE\CommonExtensions\Microsoft\TestWindow y no desde una ruta temporal como %appData%\assembly\dl3\ que esté observando en este momento. Esto debería solucionar el problema para ti.

También quise actualizar que en el último código, hemos mejorado nuestra lógica y con la lógica mejorada, no importaría desde dónde se está cargando el binario y simplemente funcionaría para usted.

Saludos

Aseem Bansal

+0

Sí. Muchas gracias, amigo ... Vi su respuesta ayer y iba a publicar una respuesta. Gracias por informarme aquí ya que los blogs de MSDN no tienen un sistema de notificación para nuevos comentarios. :) –

+0

Estoy experimentando este error también. Es bastante frustrante, ¿cómo puedo asegurarme de que se cargue Microsoft.VisualStudio.TestPlatform.Core.dll en lugar de la versión de% de% appdata assembly? – ryanjones

+0

Me encuentro con esto en el nuevo VS 2012 RC Leí a través de la secuencia de comentarios en la publicación del blog vinculado ... Tengo la copia sombra desactivada. Lo único que puedo pensar que cambió cuando funcionó y cuando no lo hizo es que VS 2012 se estrelló el otro día y luego, cuando lo comencé, dijo que Windows realizó cambios para ejecutarlo en modo de compatibilidad – chrisortman

3

encontrado una correlación:

Cuando se habilita NuGet de auto-pull, me encuentro con este problema en VS 11 después de aproximadamente 15 ~ construcciones. Eliminación de la carpeta Paquetes y forzar una nueva extracción de dependencias en las correcciones de compilación.

También noté que si purgo manualmente las carpetas obj/bin en la raíz de la solución, la solución se corrige.

Por lo tanto, creo que esto suena como que el Test Suite no está actualizando dlls en caché con el de la configuración de solución actual. A medida que editamos, los dlls se desincronizan y hacen que la unidad de prueba de la unidad no se inicie.

Espero que esto ayude.

+0

Punto de penetración. No he intentado esto. También estoy usando NuGet con auto-pull. Gracias por compartir... :) –

1

Tuve este problema, probé la sugerencia en un comentario de @chrisortman y resolvió mi problema.

Se sugirió que se elimine: %appdata%\assembly\dl3

Aunque lo encontré aquí: %appdata%..\..\Local\dl3

me estaba volviendo loco. Verdaderamente enojado.

0

Gracias Leniel y Aseem Bansal por su ayuda.

Tengo un problema similar, pero la solución con esta publicación no me sirve, Mi VS 2012 + silk4net prueba de carga en Test Explorer.

Antes de eliminar Telerik Test Studio de mi PC. Pero la extensión para VS no se elimina. Después de eliminar esta extensión, las extensiones comenzaron a funcionar correctamente. Quien ve el problema persiste, vea la extensión puede ser un problema en ellos.

Espero que esto ayude.

0

Un punto más:

Environment.ExitCode = 0; 

tiene que añadir al final de cada prueba durante su limpieza! Aprendí de esta manera difícil. ¡El marco de prueba de la unidad MS verifica esto y no ejecuta la próxima prueba con un código de salida distinto de cero de la prueba anterior!

Este es un hilo muy bueno, resuelvo casi todos los problemas de mi unidad de prueba en este hilo.

Cuestiones relacionadas