【问题标题】:Implicitly run Unit Tests隐式运行单元测试
【发布时间】:2017-03-22 14:12:04
【问题描述】:

请看下面的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

【问题讨论】:

  • 澄清一下,您说的是 NUnit 单元测试(而不是 MSTest 单元测试)吗?
  • @Alex,谢谢。我是。我已在问题中添加了标签。

标签: c# unit-testing msbuild nunit


【解决方案1】:

答案只是添加一个 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>

【讨论】:

    猜你喜欢
    • 2012-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-07-29
    • 2016-11-18
    相关资源
    最近更新 更多