これを正しく行うには、おそらくTeamCityやCruise Controlのような何らかのContinuous Integration Serverが必要です。
あなたは、あなたが設定がリリースされ、タスクが失敗した場合、その後、ビルドが失敗したことをターゲットに条件を追加することができ、次の
<!--BEGIN RUNNING UNIT TESTS-->
<Choose>
<When Condition=" '$(Configuration)' == 'Release' ">
<ItemGroup>
<TestAssemblies Include="$(BuildDir)\Builds\Release\BusinessLayer.Tests.dll" />
<TestAssemblies Include="$(BuildDir)\Builds\Release\ResourceAccessLayer.Tests.dll" />
</ItemGroup>
</When>
<Otherwise>
<ItemGroup>
<TestAssemblies Include="$(BuildDir)\Builds\Debug\BusinessLayer.Tests.dll" />
<TestAssemblies Include="$(BuildDir)\Builds\Debug\ResourceAccessLayer.Tests.dll" />
</ItemGroup>
</Otherwise>
</Choose>
<UsingTask TaskName="NUnit" AssemblyFile="$(teamcity_dotnet_nunitlauncher_msbuild_task)" />
<Target Name="Test" DependsOnTargets="Build">
<NUnit NUnitVersion="NUnit-2.4.6" Assemblies="@(TestAssemblies)" />
</Target>
<!--RUNNING UNIT TESTS-->
を使用してのMSBuildスクリプトにNUnitのテストを追加することができます。
は、私は、これはポイント1と3
EDITをカバーすべきだと思う。それを行うために他の方法は、NUnitのは、thisとthisを助けるかもしれないVisual Studioでプリ/ポストビルドステップを使用してテストを実行することです。これはあなたが簡単にTeamCityでこれを達成することができます
こんにちは、これは通常のVisual Studioのビルドを使用していないのだろうか?私。開発者はCruiseControlなどのクライアントをインストールしてから、Visual Studioの外部にビルドする必要があります。 –