Mi solución VS2010 tiene un proyecto de prueba. La unidad pone a prueba a sí mismos hacen referencia al siguiente espacio de nombres:Proyecto de prueba de unidad que no se genera desde el servidor de compilación
using Microsoft.VisualStudio.TestTools.UnitTesting;
que se accede a través de la siguiente asamblea en mi PC:
Assembly Microsoft.VisualStudio.QualityTools.UnitTestFramework
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\
PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Cuando construyo la solución en mi PC que no tienen problemas; las pruebas se construirán y ejecutarán bien.
Tenemos una página de intranet que podemos utilizar para iniciar compilaciones en un servidor de compilación. Cuando construyo a través de esta página, la generación falla con los siguientes errores:
Generator.cs(3,17): error CS0234: The type or namespace name 'VisualStudio'
does not exist in the namespace 'Microsoft' (are you missing an assembly
reference?)
El problema obvio sería que el Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
mencionado anteriormente no está presente en el servidor de compilación. Pensé que esto se instalaría con VS2010, y dado que los proyectos en mi solución crean objetivos de .NET 4.0, esperaría que esto se instale en el servidor de compilación.
¿Cuál es la forma más fácil de resolver esto? El servidor de compilación está fuera de mi jurisdicción y, en particular, no quiero registrar un trabajo para instalar nuevas bibliotecas en él.
¿No habría problemas de licencia con esos dlls cuando, por ejemplo, tener su proyecto como un proyecto de código abierto, por ej. Github? –
Solo para responder a mi propio comentario: Sí, habrá problemas de licencia; esto no estaría permitido: http://social.msdn.microsoft.com/Forums/vstudio/en-US/32384366-b668-4f18-99eb- 9c67f7eef233/redistributing-microsoftvisualstudioqualitytoolsunittestframeworkdll –
Hice lo que sugiere la respuesta. funciona para mi PC de desarrollo (con VS) y nuestro servidor de CI (sin VS). Prefiero tener el DLL tirado por NuGet, pero no puedo hacer que funcione. –