Tôi đã tạo một dự án thử nghiệm C# trong VS2015 RC. nó được xây dựng tại địa phương nhưng khi tôi cố gắng để xây dựng trên chúng tôi CI xây dựng máy chủ (TeamCity) nó không thành công với các lỗi:Tham khảo Microsoft.VisualStudio.QualityTools.UnitTestFramework để xây dựng CI
UnitTest1.cs (2,17): CS0234 lỗi: Loại hoặc namespace tên 'VisualStudio' không không tồn tại trong không gian tên 'Microsoft' (là bạn thiếu tham chiếu lắp ráp?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj ] UnitTest1.cs (9,10): lỗi CS0246: Không thể tìm thấy loại hoặc không gian tên 'TestMethod' (bạn đang thiếu chỉ thị sử dụng hoặc tham chiếu lắp ráp?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP .MetadataService.Api.Tests.csproj] UnitTest1.cs (9,10): lỗi CS0246: Không thể tìm thấy loại hoặc không gian tên 'TestMethodAttribute' (bạn có thiếu chỉ dẫn sử dụng hoặc tham chiếu lắp ráp không?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj] UnitTest1.cs (6,6): lỗi CS0246: Tên loại hoặc không gian tên Không thể tìm thấy 'TestClass' (bạn có thiếu chỉ thị sử dụng hoặc tham chiếu lắp ráp không?) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api .Tests.csproj] UnitTest1.cs (6,6): lỗi CS0246: Tên kiểu hoặc không gian tên 'TestClassAttribute' không thể tìm thấy (bạn là missi ng một sử dụng chỉ thị hoặc tham khảo một hội) [D: \ BuildAgent \ work \ e486bf18e454d0c2 \ dh.PSP.Coordinator.Api.Tests \ dh.PSP.MetadataService.Api.Tests.csproj]?
Rõ ràng điều này là do lắp ráp có chứa các không gian tên (Microsoft.VisualStudio.QualityTools.UnitTestFramework) không có trên máy chủ xây dựng, trên máy cục bộ của tôi nó nằm tại C: \ Program Files (x86) \ Microsoft Visual Studio 12.0 \ Common7 \ IDE \ PublicAssemblies \ Microsoft.VisualStudio.QualityTools.UnitTestFramework.dll. Tôi đoán tôi có thể sao chép lắp ráp vào giải pháp của tôi để nó trở thành một phần của codebase nhưng các tập tin di chuyển bằng tay cảm thấy như một chút của một hack không thích hợp. Tôi đã tìm kiếm xung quanh trên NuGet và thấy http://www.nuget.org/packages/Microsoft.VisualStudio.QualityTools.UnitTestFramework/ mà tôi hình dung sẽ làm các trick, nhưng cài đặt gói phần mềm đó thất bại với:
Install-Package: Không thể cài đặt gói 'Microsoft.VisualStudio.QualityTools.UnitTestFramework 11.0.50727.1' . Bạn đang cố gắng để cài đặt gói này thành một dự án nhắm ' .NETFramework, Version = v4.5.2' , nhưng các gói không chứa bất kỳ tài liệu tham khảo lắp ráp hoặc các tập tin nội dung tương thích với điều đó khuôn khổ
Giải pháp tốt nhất của tôi là gì? Tôi ngạc nhiên rằng việc tạo ra một dự án thử nghiệm trong VS2015 không tự động bao gồm tất cả các phụ thuộc mà tôi cần, mặc dù có lẽ tôi đang ngây thơ (tôi là một cái gì đó của một netter dot non trẻ).
Tại sao một người nào đó đánh dấu sự cố này? Đó là một câu hỏi hoàn toàn hợp lệ. Tôi là một nhà phát triển thiếu kinh nghiệm .net, sau khi dành một số thời gian đáng kể googling và không nhận được bất cứ nơi nào, đang tìm kiếm một số hướng dẫn như thế nào để tiến bộ. Có phải SO rất nhiệt tình đến nỗi tôi không được phép làm điều đó? Nghiêm túc? – jamiet
@jaimiet Tôi đã có cùng một vấn đề, trên TeamCity Agent của bạn là bạn xây dựng theo Mono trên Linux? Mono không cung cấp thư viện đó như là một phần của phân phối của nó. Nếu đó là .NET dưới Windows, bạn có một vài tùy chọn để thực hiện nó. – TylerY86