2017-03-22 59 views
2

請參考下面的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> 

如果我排除:/t:Test從DOS命令,然後生成成功連如果單元測試失敗。如何確保在運行此命令的單元測試的運行:

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

只是要清楚,你在說什麼NUnit的單元測試(而不是MSTest單元測試)? – alex

+0

@亞歷克斯,謝謝。對,我是。我爲這個問題添加了一個標籤。 – w0051977

回答

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>