Ho creato un progetto di test C# in VS2015 RC. si costruisce a livello locale, ma quando tento di costruire sul nostro server CI build (TeamCity) non riesce con errori:Riferimento Microsoft.VisualStudio.QualityTools.UnitTestFramework per build CI
UnitTest1.cs (2,17): l'errore CS0234: Il tipo o dello spazio dei nomi nome 'VisualStudio' fa non esiste nello spazio dei nomi 'Microsoft' (sei un mancante un riferimento all'assembly?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj ] UnitTest1.cs (9,10): errore CS0246: il tipo o il nome dello spazio dei nomi "TestMethod" non è stato trovato (manca una direttiva using o un riferimento all'assembly?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP .MetadataService.Api.Tests.csproj] UnitTest1.cs (9,10): errore CS0246: il tipo o il nome dello spazio dei nomi "TestMethodAttribute" non è stato trovato (ti manca una direttiva o un riferimento all'assembly?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs (6,6): errore CS0246: il tipo o il nome dello spazio dei nomi Impossibile trovare 'TestClass' (manca una direttiva using o un riferimento all'assembly?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api .Tests.csproj] UnitTest1.cs (6,6): errore CS0246: il tipo o il nome dello spazio dei nomi 'TestClassAttribute' non è stato trovato (sei missi ng una direttiva using o un riferimento all'assembly) [D: \ BuildAgent \ lavori \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj]?
Chiaramente, questo è dovuto al fatto che l'assembly che contiene questi spazi dei nomi (Microsoft.VisualStudio.QualityTools.UnitTestFramework) non si trova sul server di generazione, sul mio computer locale risiede in C: \ Programmi (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PublicAssemblies \ Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll. Immagino di poter copiare l'assembly nella mia soluzione in modo che diventi parte del codebase, ma spostare manualmente i file sembra un po 'poco elegante. Ho cercato in giro su NuGet e ho trovato http://www.nuget.org/packages/Microsoft.VisualStudio.QualityTools.UnitTestFramework/ che ho pensato che avrebbe fatto il trucco, ma l'installazione di tale pacchetto non riuscita con:
Installare-Pacchetto: Impossibile installare il pacchetto 'Microsoft.VisualStudio.QualityTools.UnitTestFramework 11.0.50727.1' . Si sta tentando di installare questo pacchetto in un progetto che ha come bersaglio ' .NETFramework, Version = v4.5.2' , ma il pacchetto non contiene alcun riferimenti di montaggio o file di contenuto che sono compatibili con quella quadro
Qual è la mia migliore opzione per risolvere questo problema? Sono sorpreso che la creazione di un progetto di test in VS2015 non includa automaticamente tutte le dipendenze di cui ho bisogno, anche se forse sono ingenuo (sono un po 'una neonata dot netter).
Perché mai qualcuno potrebbe contrassegnarlo? È una domanda perfettamente valida. Sono uno sviluppatore di .net inesperto che, dopo aver trascorso un po 'di tempo su google e senza arrivare da nessuna parte, sta cercando indicazioni su come progredire. È così così elitario che non mi è permesso farlo? Sul serio? – jamiet
@jaimiet Ho avuto lo stesso problema, sul tuo agente TeamCity stai costruendo sotto Mono su Linux? Mono non fornisce quella libreria come parte della sua distribuzione. Se è .NET sotto Windows, hai alcune opzioni per installarlo. – TylerY86