Test Explorer (VS) muestra '<Proyecto desconocido>'

157

Todo lo siguiente se realiza en VS2019, utilizando .NET Framework 4.7 y NUnit + NUnit3TestAdapter

Creé un ensamblaje llamado Exitus.Tests, y agregué algunas pruebas unitarias. Sin embargo, con algunos problemas con Nuget, que no pude resolver, hice otro proyecto llamado Exitus.UnitTests y eliminé el archivo que tenía en el proyecto anterior (incluido el cambio del espacio de nombres).

Ahora, el nuevo proyecto de prueba mostraba operaciones correctamente en el explorador, pero quedaba un "fantasma" del antiguo proyecto:

Explorador de prueba de Visual Studio

Si intento ejecutar la prueba, la ventana de salida muestra el siguiente error:

System.InvalidOperationException: No se encontró el siguiente TestContainer 'C: \ Users \ xxx \ Source \ Repositories \ Expire \ Exitus.Tests \ bin \ Debug \ Exitus.Tests.dll' en Microsoft.VisualStudio.TestWindow.Client.TestContainer.TestContainerProvider .d__46.MoveNext () --- Fin del seguimiento de la pila desde la ubicación anterior donde se produjo la excepción --- en System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (tarea de tarea) en System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification ) en Microsoft.VisualStudio.TestWindow.Controller.TestContainerConfigurationQueryByTestsBase.d__6.MoveNext () (...)

El seguimiento de la pila es mucho más largo, pero lo curioso es la segunda línea, que indica que no pudo encontrar el contenedor de prueba en \Exitus.Tests\bin\Debug\Exitus.Tests.dll. Este es el nombre del antiguo proyecto de prueba, que eliminé y eliminé. He buscado todo el proyecto para el término Exitus.Testsy no devuelve ningún resultado.

¿Hay alguna forma de eliminar a la fuerza este proyecto 'fantasma'?

Noceo
fuente

Respuestas:

325
  1. Cerrar Visual Studio.
  2. Elimine los *.testlogarchivos en: carpeta de solución \ .vs \ nombre de solución \ v16 \ TestStore \ number .
Peter Wretmo
fuente
3
Después de muchos comentarios, he decidido cambiar esto a la respuesta aceptada. Todavía utilicé la respuesta de Alex B., que funciona bien siempre que no tenga archivos críticos en su repositorio git, que pueden no rastrearse.
Noceo
13
.vs es un directorio oculto Asegúrese de configurar su explorador de archivos para ver directorios ocultos
citronas
1
No resolutivo, resolví con "git clean -xfd"
Zax
3
El 99% de los errores de Visual Studio se resuelven eliminando los archivos mágicos ocultos en la carpeta .vs o en la carpeta Windows temp / roaming / local. : C
filescraps
55
Le pregunté internamente sobre esto. Aparentemente, el problema se solucionó en 16.5.
Drew Noakes
21

Enfrenté el mismo problema en este momento. Una limpieza ayudó. Como tuve problemas de limpieza con VS la última vez (algunos bloqueos de DB impiden que ocurra una limpieza real), mi limpieza de trabajo fue de esta manera:

  1. Cerrar VS.
  2. Git Bash en la carpeta de soluciones: git clean -xfd

Probablemente ayude.

Alex B.
fuente
2
Eso funcionó, muchas gracias. Parece su primera publicación, si ese es el caso, debo decir que una vez fue una gran entrada para hacer :-)
Noceo
Vi el "Proyecto desconocido" en los resultados del explorador de prueba varias veces cuando moví las pruebas entre las DLL de prueba con el corredor de prueba XUnit. Descubrí que era suficiente eliminar la carpeta .vs que estaba en la misma carpeta que mi archivo de solución.
Frank Schwieterman
8
Esta respuesta eliminará todo lo que no esté en el control de la fuente, por lo que si no registra cosas como launchSettings.json, es posible que desee utilizar la respuesta de pwretmo en su lugar.
Sean
44
La respuesta de @pwretmo es una respuesta más segura y directa al problema específico.
código de nieve
2
La comunidad ha hablado. He cambiado la respuesta aceptada, para ayudar a otros de la mejor manera posible. Esta respuesta todavía estaba bien para mí, pero entiendo que puede presentar ciertos riesgos. Sin embargo, todavía estoy muy agradecido por la ayuda :-).
Noceo
1

Ninguna de estas soluciones funcionó para mí. Pude lograr que el explorador de prueba funcionara cerrando Visual Studio y eliminando la carpeta " .vs ". Luego vuelva a abrir la solución y deje que la reconstruya.

N-ate
fuente