Với MSTest, bạn chỉ có thể tạo hai dự án thử nghiệm (hội đồng) và chỉ xác định một dự án trong cấu hình xây dựng để sử dụng để thử nghiệm. Trong MSBuild, đây là con đường để đi. Đối với các định nghĩa xây dựng WF-Based mới, tôi hiện không có một mẫu trong tầm tay:
<ItemGroup>
<!-- TEST ARGUMENTS
If the RunTest property is set to true then the following test arguments will be used to run
tests. Tests can be run by specifying one or more test lists and/or one or more test containers.
To run tests using test lists, add MetaDataFile items and associated TestLists here. Paths can
be server paths or local paths, but server paths relative to the location of this file are highly
recommended:
<MetaDataFile Include="$(BuildProjectFolderPath)/HelloWorld/HelloWorld.vsmdi">
<TestList>BVT1;BVT2</TestList>
</MetaDataFile>
To run tests using test containers, add TestContainer items here:
<TestContainer Include="$(OutDir)\AutomatedBuildTests.dll" />
<TestContainer Include="$(SolutionRoot)\TestProject\WebTest1.webtest" />
<TestContainer Include="$(SolutionRoot)\TestProject\LoadTest1.loadtest" />
Use %2a instead of * and %3f instead of ? to prevent expansion before test assemblies are built
-->
</ItemGroup>
<PropertyGroup>
<RunConfigFile>$(SolutionRoot)\LocalTestRun.testrunconfig</RunConfigFile>
</PropertyGroup>
Mẹo: Để sử dụng xây dựng định nghĩa chung chung, chúng tôi đặt tên cho tất cả các dự án thử nghiệm của chúng tôi "AutomatedBuildTests", tức là không có sự khác biệt về giải pháp. Vì vậy, định nghĩa xây dựng có thể được bao gồm trong bất kỳ định nghĩa xây dựng hiện có nào (hoặc thậm chí là một định nghĩa phổ biến) luôn thực thi tập hợp các kiểm tra phù hợp. Nó sẽ là một nhiệm vụ dễ dàng để thêm vào một kiểm tra "nếu tồn tại" để cho phép một định nghĩa xây dựng để chỉ chạy thử nghiệm khi một hội đồng kiểm tra có mặt. Chúng tôi không sử dụng điều này để có được lỗi xây dựng khi không có lắp ráp thử nghiệm được tìm thấy như chúng tôi hoàn toàn muốn thử nghiệm với tất cả những người xây dựng sử dụng định nghĩa này.
Trình kiểm tra của bạn là gì? MSTest, NUnit, cái gì khác (?) – pantelif