隐式运行单元测试

时间:2017-03-22 14:12:05

标签: c# unit-testing msbuild nunit

请参阅下面的DOS命令:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe WindowsFormsApplication1.csproj /t:Test

.csproj文件如下所示:

 <PropertyGroup>
        <NUnit3-ToolPath>C:\Development\C#\UnitTests\UnitTests\packages\NUnit.ConsoleRunner.3.6.1\tools</NUnit3-ToolPath>
 </PropertyGroup>

  <Target Name="Test">
    <NUnit3 ToolPath="$(NUnit3-ToolPath)" Assemblies="C:\Development\C#\UnitTests\WindowsFormsApplication1\bin\Debug\UnitTests.dll" OutputXmlFile="test-results.xml" />
  </Target>

如果我从DOS命令中排除:/t:Test,那么即使单元测试失败,构建也会成功。运行此命令时,如何确保运行单元测试:

C:\Windows\Microsoft.NET\Framework64\v4.0.30319\msbuild.exe WindowsFormsApplication1.csproj

1 个答案:

答案 0 :(得分:0)

答案只是添加AfterTargets属性,如下所示:

 <Target Name="Test" **AfterTargets="Build">**
     <NUnit3 ToolPath="$(NUnit3-ToolPath)" Assemblies="C:\Development\C#\UnitTests\WindowsFormsApplication1\bin\Debug\UnitTests.dll" OutputXmlFile="test-results.xml" />   </Target>