La soluzione VS2010 contiene un progetto di test. L'unità di prove di riferimento se stessi la seguente spazio:Progetto di test unità non compilato dal server di build
using Microsoft.VisualStudio.TestTools.UnitTesting;
cui si accede tramite il seguente assemblea sul mio PC:
Assembly Microsoft.VisualStudio.QualityTools.UnitTestFramework
C:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\
PublicAssemblies\Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
Quando costruisco la soluzione sul mio PC non ho problemi; i test verranno creati e funzionanti.
Abbiamo una pagina intranet che possiamo utilizzare per avviare le build su un server di build. Quando costruisco tramite questa pagina, la build non riesce con i seguenti errori:
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?)
Il problema evidente è che il Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll
di cui sopra non è presente sul server di build. Pensavo che questo sarebbe stato installato con VS2010, e dal momento che i progetti nella mia soluzione creano target .NET 4.0, mi aspetto che questo sia installato sul server di build.
Qual è il modo più semplice per risolvere questo problema? Il server di build è fuori dalla mia giurisdizione e non desidero particolarmente registrare un lavoro per avere nuove librerie installate su di esso.
Non ci sarebbero problemi di licenza con quelle DLL quando ad es. avere il tuo progetto come progetto open source su ad es. Github? –
Solo per rispondere al mio commento: Sì, ci saranno problemi di licenza - questo non sarebbe permesso: http://social.msdn.microsoft.com/Forums/vstudio/en-US/32384366-b668-4f18-99eb- 9c67f7eef233/redistributing-microsoftvisualstudioqualitytoolsunittestframeworkdll –
Ho fatto ciò che la risposta suggerisce. funziona per il mio PC di sviluppo (con VS) e il nostro server CI (senza VS). Preferisco avere la DLL tirato da NuGet, ma non riesco a farlo funzionare. –