2011-08-03 24 views
7

Estoy usando TFS 2008 y VS 2010. Después de agregar un proyecto de MS Test a mi solución comencé a recibir los siguientes errores en el servidor de compilación.MS Build No compila MS Test Project en Build Server

UnitTest1.cs (5,40): CS0234 de error: El tipo o espacio de nombres 'prueba unitaria' no existe en el espacio de nombres 'Microsoft.VisualStudio.TestTools' (¿falta una referencia de montaje ?) UnitTest1.cs (22,17): error CS0246: No se pudo encontrar el tipo o espacio de nombre 'TestContext' (¿falta una directiva o una referencia de ensamblado?) UnitTest1.cs (28,16): error CS0246: No se encontró el tipo o el nombre del espacio de nombres 'TestContext' (¿falta una directiva using o una referencia de ensamblado?) UnitTest1.cs (62,10): error CS0246: El tipo o el nombre de espacio de nombres 'TestMethod' no se pudo encontrar (¿falta una directiva using o una referencia de ensamblado?) UnitTest1.cs (62,10): error CS0246: No se pudo encontrar el tipo nombre de espacio de nombres 'TestMethodAttribute' (¿está ¿falta una directiva using o una referencia de ensamblado?) UnitTest1.cs (12,6): error CS0246: No se encontró el tipo o el nombre de espacio de nombres 'TestClass' (¿falta una directiva using o ?) UnitTest1.cs (12,6): error CS0246: no se pudo encontrar el tipo o nombre de espacio de nombres 'TestClassAttribute' (¿falta una directiva using o una referencia de ensamblado?) Listo para ejecutar tarea "Csc" - FAILED .

Instalé VS 2010 en el servidor de compilación pero sigue teniendo los mismos errores.

Respuesta

2

Puede comprobar si está utilizando MSBuild correcto. En mi caso, cuando recibo mensajes tales como:

'TestMethod' could not be found 

que teníamos que estar seguro de que se están ejecutando la versión correcta de MSBuild.

C:\Windows\Microsoft.NET\Framework\v4.0.30319\MSBuild.exe your_solution.sln /t:rebuild /t:Rebuild /clp:ErrorsOnly 

Eso también corrige algunos problemas con Microsoft.VisualStudio.QualityTools.UnitTestFramework .dll

0

Sus etiquetas mencionan VS2010 y TFS2008. De forma predeterminada, los proyectos de prueba unitaria están destinados a destino .NET 4.0 y Team Build 2008 no sabrá cómo manejarlos. Debe configurar sus proyectos de prueba en Target .NET 3.5 (solo se puede hacer si ha instalado VS2010 SP1). O actualice TFS 2008 a TFS2010.

Si desea ejecutar las herramientas de prueba con TFS 2008, también debe instalar Visual Studio Team Developer o Suite en el agente de compilación. Visual Studio 2010 no lo ayudará.

7

El problema está en sus proyectos de prueba. hace referencia a algunos ensamblados que no se han implementado en Build Server. Tampoco puedes hacer eso simplemente copia y pega a GAC ​​o al directorio de trabajo.

La mejor y más fácil forma de hacerlo es instalar Visual studio 2010 Agents en el servidor de compilación. Es gratis y se puede descargar desde el sitio web de MS. Al instalar los agentes, instalará todas las bibliotecas necesarias para compilar e incluso ejecutar los proyectos MSTest.

Cuestiones relacionadas