63

Si abro una solución en Visual Studio 2008 y ejecuto una prueba unitaria, VS crea un nuevo archivo .vsmdi en la carpeta Elementos de solución y le da el siguiente número disponible, p. Mi Solution2.vsmdi.¿Por qué Visual Studio crea un nuevo archivo .vsmdi?

¿Alguna idea de por qué VS está haciendo esto y cómo puedo conseguir que deje de hacer esto?

+0

Posible duplicado de [¿cuál es el propósito de \ *. Vsmdi? ¿Debo controlar el origen?] (Http://stackoverflow.com/questions/7550765/whats-the-purpose-of-vsmdi-do-i-need-to-source-control-it) –

Respuesta

30

Parece que el VSMDI problem is a known bug and has been around since VS2005 Team System pero todavía no tiene una solución clara. Otra razón para NO usar MS Test.

Detalles del blog de MSDN how to run unit tests without VSMDI files.

+8

primer enlace era inaccesible en el momento en que hice clic en él, pero puede leerlo archivado gracias a The Wayback Machine: http://web.archive.org/web/20080302162715/http://blogs.vertigosoftware.com/teamsystem/archive/2006 /06/23/Beware_the_Team_Test_VSMDI_file.aspx – akavel

+0

Gracias por el enlace de retorno. :) –

+0

@ Jon Limjap: escribiste "Otra razón para NO usar MSTest". Tengo curiosidad: ¿cuáles son tus otras razones para NO usar MSTest? Además, ¿qué marco (s) de prueba de unidades prefiere? BTW: extraño, me sale un error .vsmdi pero las pruebas parecen ejecutarse independientemente de lo que es demasiado extraño para mi preferencia. saludos ~~ gerry (lowry) [email protected] – gerryLowry

1

Resolvemos esto mirando siempre el .vsmdi.
Parece que esto solo ocurre cuando el archivo .vsmdi es de solo lectura, p. no desprotegido en un sistema de control de versiones que usa ese tipo de comportamiento de bloqueo de archivos locales (Perforce, etc.).

2

Suponiendo que el archivo VSMDI está bajo control de código fuente, aquí está un artículo de soporte de Microsoft acerca de este tema: Multiple vsmdi Files after Running Team Test with VSMDI file under Source Control

que dice:

Alguien hizo una prueba mientras que otra persona estaba modificando el archivo vsmdi. Team Test detecta que el archivo VSMDI no está sincronizado; por lo tanto, Team Test lo hace y, por lo tanto, ve el incremento de los archivos vsmdi.

Y:

En el futuro desea asegurarse de que el archivo no está marcado para auto la caja cuando se modifica. Cuando el comprobador actual tiene el archivo VSMDI desprotegido, no desea que otros usuarios lo puedan verificar . Desea que los desarrolladores revisen el archivo, ejecuten una prueba y véanlo de nuevo.

Cuestiones relacionadas