Я создал тестовый проект C# в VS2015 RC. он строит на месте, но когда я пытаться построить на нашем CI сервере сборки (TeamCity) он терпит неудачу с ошибками:Ссылка Microsoft.VisualStudio.QualityTools.UnitTestFramework для сборки CI
UnitTest1.cs (2,17): CS0234 об ошибке: тип или пространство имен имя «VisualStudio» делает не существует в пространстве имен «Microsoft» (есть ли у вас отсутствует ссылка на сборку?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj ] UnitTest1.cs (9,10): ошибка CS0246: имя типа или пространства имен «TestMethod» не найден (вам не указана директива using или ссылка на сборку?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP .MetadataService.Api.Tests.csproj] UnitTest1.cs (9,10): ошибка CS0246: имя типа или пространства имен 'TestMethodAttribute' не удалось найти (вам не хватает указателя или ссылки на сборку?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs (6,6): ошибка CS0246: имя типа или пространства имен «TestClass» не найден (вам не указана директива using или ссылка на сборку?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api .Tests.csproj] UnitTest1.cs (6,6): ошибка CS0246: имя типа или пространства имен «TestClassAttribute» не найдено (вы пропустите нг А с использованием директивы или ссылка на сборку) [D: \ BuildAgent \ работы \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj]?
Ясно, что это связано с тем, что сборка, содержащая эти пространства имен (Microsoft.VisualStudio.QualityTools.UnitTestFramework), не находится на сервере сборки, на моей локальной машине она находится в папке C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PublicAssemblies \ Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll. Я предполагаю, что смогу скопировать сборку в мое решение, чтобы она стала частью кодовой базы, но файлы, перемещаемые вручную, чувствуют себя немного неэлегантным взломом. Я искал вокруг на NuGet и нашел http://www.nuget.org/packages/Microsoft.VisualStudio.QualityTools.UnitTestFramework/ которые я фигурировал бы сделать трюк, но установка, что пакет не удалось с:
Install-Package: Не удается установить пакет «Microsoft.VisualStudio.QualityTools.UnitTestFramework 11.0.50727.1» , Вы пытаетесь установить этот пакет в проект, который нацелен ».NETFramework, Version = v4.5.2' , но пакет не содержит каких-либо ссылки на сборки или файлы содержимого, которые совместимы с этой рамках
Какой у меня лучший способ решить это? Я удивлен тем, что создание тестового проекта в VS2015 автоматически не включает все зависимости, которые мне нужны, хотя, возможно, я наивна (я - нечто похожее на нетривиальную точку).
Почему бы кому-то это не отметить? Это совершенно правильный вопрос. Я неопытный разработчик .net, который, потратив некоторое время на поиски в Google и не получая нигде, ищет некоторые рекомендации относительно того, как продвигаться. Так ли так элитарно, что мне не разрешено это делать? Шутки в сторону? – jamiet
@jaimiet У меня была такая же проблема, на вашем агенте TeamCity вы строите под Mono на Linux? Mono не предоставляет эту библиотеку как часть ее распространения. Если это .NET под Windows, у вас есть несколько вариантов получения его на месте. – TylerY86