Sử dụng MSTest, đường dẫn tương đối gốc của số DeploymentItemAttribute là gì.Gốc đường dẫn tương đối của DeploymentItemAttribute là gì?
Trả lời
mỗi trang MSDN ...
đường dẫn tương đối có liên quan đến các thiết lập RelativePathRoot tìm thấy trong các tập tin .testrunconfig.
Cài đặt đó theo mặc định, thư mục giải pháp . Vì vậy, nếu bạn có cấu trúc dự án này
SecretProject\
ComponentA\
ComponentA.Test\
Resources\
required.xml
ComponentA.Test.csproj
Tests.cs
SecretProject.sln
Và bạn muốn triển khai required.xml, bạn sẽ tạo ra một DeploymentItemAttribute như thế này
[TestClass]
public class Tests
{
[TestMethod]
[DeploymentItem("ComponentA.Test\Resources\required.xml")]
public void Test()
{
}
}
Có vẻ như các tập tin thuộc tính cần phải được đặt thành 'Nội dung' và 'Sao chép luôn luôn' hoặc 'Sao chép nếu mới hơn'. Có các ví dụ nâng cao về số this MSDN page.
Giả sử rằng RelativePathRoot mặc định là thư mục mà giải pháp của bạn cư trú là không chính xác trong trường hợp của tôi, cũng không phải là RelativePathRoot được định nghĩa trong tệp .testrunconfig của tôi. Tôi tìm thấy RelativePathRoot mặc định là thư mục/bin/debug cho giải pháp.
Quay lại từ điểm đó, sau đó đi bộ đến tệp của tôi mà tôi đang cố gắng triển khai cho thử nghiệm đơn vị hoạt động tốt.
Vì vậy, tôi sẽ thêm kinh nghiệm của mình.
Vì vậy, nếu bạn đang sử dụng tệp .testrunconfig, điều đó sẽ vượt qua (ghi đè) những gì tôi đang nói bên dưới.
Tôi đã tìm ra một số tùy chọn.
So với các csproj hiện
So với các sln
So với các cs hiện nộp
Cuối cùng tôi đã xây dựng hệ thống của tôi làm việc bằng cách sử dụng "liên quan đến tệp .cs hiện tại ".
Trong ví dụ của tôi, tôi cần XSD từ một dự án khác được sao chép sang cho UnitTest của tôi. Nhưng loại tệp không quan trọng.
Ví dụ:
c: \ Myfolder \ MyXsdProject \ XSD \ MyCoolXsd.xsd
c: \ Myfolder \ MyCsharpUnitTestProject \ MySubFolder1 \ MySubFolder2 \ MyUnitTestClass.cs
namespace MyCsharpUnitTestProject.MySubFolder1.MySubFolder2
{
[TestClass]
[DeploymentItem(@"..\..\..\MyXsdProject\XSDs\MyCoolXsd.xsd")]
public class MyUnitTestClass
{
}
}
- 1. Đường dẫn tuyệt đối và tương đối
- 2. Đường dẫn tương đối ASP.NET
- 3. Đường dẫn tương đối App.config
- 4. đường dẫn tương đối vào tệp CSS
- 5. Lợi ích của đường dẫn tương đối như "../include/header.h" cho tiêu đề là gì?
- 6. đường dẫn tuyệt đối tương đối perl
- 7. Đường dẫn tương đối từ địa chỉ của toán tử gốc ("~") trong mã phía sau
- 8. Đường dẫn gốc của ứng dụng Grails
- 9. Đường dẫn tương đối trong Winforms
- 10. .load() và đường dẫn tương đối
- 11. PhantomJS yêu cầu() đường dẫn tương đối
- 12. "Đường dẫn chuẩn" là gì?
- 13. Đường dẫn tệp tương đối Java
- 14. PHP require() tương đối lỗi đường dẫn
- 15. Gói đường dẫn tương đối trong R
- 16. đường dẫn tương đối bằng extjs 4
- 17. log4j tương đối đường dẫn tập tin
- 18. Trang GitHub và đường dẫn tương đối
- 19. đường dẫn tương đối Bắt trong Vim
- 20. đường dẫn tệp tương đối trong perl
- 21. URL tham chiếu đường dẫn/URL tương đối của đường dẫn
- 22. Đường dẫn tương đối sử dụng Uri
- 23. PhoneGap và url gốc đường dẫn đối với tài sản
- 24. Cách thêm đường dẫn tương đối vào đường dẫn xây dựng của FlexBuilder?
- 25. Nhận đường dẫn tương đối từ đường dẫn tuyệt đối trong PHP
- 26. Mercurial "hg status" và đường dẫn tương đối
- 27. Đường dẫn tương đối với mô-đun/gói RequireJS
- 28. Đường dẫn tương đối đến đường dẫn tuyệt đối trong VB.NET
- 29. Đường dẫn vật lý, tương đối, tuyệt đối và các đường dẫn khác
- 30. Đường dẫn // là gì, khác với/
"Có vẻ như thuộc tính tệp cần được đặt thành 'Nội dung' và 'Sao chép luôn' hoặc 'Sao chép nếu mới hơn'." Bạn sẽ ngạc nhiên khi thấy nó khó khăn như thế nào ... – SouthShoreAK
@SouthShoreAK - Nó được tìm thấy ở đâu? –
@ScottLangham Nó nằm trong thuộc tính Tệp của mục triển khai. Trong 'Solution Explorer' bạn cần đánh dấu tập tin (trong trường hợp này là 'required.xml'), nhấp chuột phải vào nó và chọn các thuộc tính. Bạn sẽ thấy nó ở đó. – dpimente