Pruebas unitarias que fallan en TFS2010 Beta 2 escritas en VS2008
-
06-07-2019 - |
Pregunta
Acabo de instalar TFS 2010 Beta 2 en nuestro servidor y funciona bien. He registrado mi solución que está escrita en Visual Studio 2008 SP1, con un proyecto principal de Class y un proyecto de prueba de unidad. El control de fuente está funcionando bien con el parche de compatibilidad hacia adelante para VS 2008 Team explorer para trabajar con TFS 2010.
Las pruebas unitarias se escriben usando MSTest. Todo funciona y se ejecuta localmente con las pruebas que pasan, pero cuando he configurado la compilación automatizada en el servidor para compilar la solución, las compilaciones de proyectos de la clase principal pero las pruebas de la unidad fallan.
Cliente: Windows 7 de 64 bits, Visual Studio 2008 SP1 Servidor: Windows 2008 RS de 64 bits, Team Foundation Server 2010 Beta 2
He intentado diferentes objetivos, diferentes versiones .net. Con el último intento de usar la siguiente versión de MSTest C: \ Archivos de programa (x86) \ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ MSTest.exe, aparece el siguiente error
TFB210610: 'MSTest.exe' returned an unexpected exit code. Expected '0'; actual '1'.
Esto me lleva a pensar que las pruebas están fallando, pero localmente no.
¿Alguien más ha tenido algún problema con esto? ¿Y puede apuntarme en la dirección correcta?
Saludos
Editar
Ahora obtengo el siguiente error ...
C: \ Windows \ Microsoft.NET \ Framework64 \ v3.5 \ Microsoft.Common.targets: No se pudo resolver esta referencia. No se pudo ubicar el ensamblaje " Microsoft.VisualStudio.QualityTools.UnitTestFramework, Version = 9.0.0.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a, processorArchitecture = MSIL " ;. Asegúrese de que el ensamblaje existe en el disco. Si su código requiere esta referencia, puede obtener errores de compilación.
Solución 2
Workaround
He conseguido que funcione bastante. Implica no utilizar los atributos de prueba ExpectedException y registrar una versión 9 de la dll en el gac del servidor. Esto funcionará por ahora, con suerte se resolverá en la versión completa de 2010, aunque también podré actualizar completamente TFS y VS, por lo que todo estará bien.
Una escritura un poco más detallada arriba se puede encontrar aquí
:-)
Otros consejos
Ejecute mstest.exe
directamente desde una línea de comando en el servidor de esta manera:
mstest.exe /testcontainer:myunittests.dll
Eso debería darte más información sobre lo que está mal.