Msbuild忽略生成错误 上下文
我有一个在jenkins管道中执行的任务集成测试和代码覆盖率 使用的工具是dotcover和Nunit 当配置为集成时,在集成测试构建期间通过dotcover执行Nunit 问题 当我在visual studio中执行配置集成时,出现了一些错误测试,然后构建失败,一切正常,但是当使用msbuild执行相同配置时,它不会返回任何错误代码,那么jenkins pipelin不会失败 这种情况让我们陷入了微妙的境地,因为我们再也不能相信我们的构建管道了 我在网上寻找解决方案已经有几天了,但我仍然坚持这一点,这就是为什么我在这里寻求你们的帮助 谢谢你的帮助 文件夹 詹金斯档案 在IntegrationProject.csproj中Msbuild忽略生成错误 上下文,msbuild,nunit,jenkins-pipeline,msbuild-task,dotcover,Msbuild,Nunit,Jenkins Pipeline,Msbuild Task,Dotcover,我有一个在jenkins管道中执行的任务集成测试和代码覆盖率 使用的工具是dotcover和Nunit 当配置为集成时,在集成测试构建期间通过dotcover执行Nunit 问题 当我在visual studio中执行配置集成时,出现了一些错误测试,然后构建失败,一切正常,但是当使用msbuild执行相同配置时,它不会返回任何错误代码,那么jenkins pipelin不会失败 这种情况让我们陷入了微妙的境地,因为我们再也不能相信我们的构建管道了 我在网上寻找解决方案已经有几天了,但我仍然坚持这
您应该能够使用dotcover参数从nunit获取返回代码
<Target Name="CoverageReport" AfterTargets="CopySqlFiles" Condition="$(Configuration) == Integration">
<Exec Command="..\packages\JetBrains.dotCover.CommandLineTools.2018.1.3\tools\dotCover.exe analyse ^
/TargetExecutable=..\packages\NUnit.ConsoleRunner.3.8.0\tools\nunit3-console.exe ^
/ReturnTargetExitCode ^
/TargetArguments="$(TargetPath)" ^
/Filters=-:nunit.framework;-:IntegrationProjectTest;-:type=MyNamespace.View.*;-:type=*Test ^
/TargetWorkingDir=$(TargetDir) ^
/Output=$(TargetDir)\TestResult\MyCoverageReport.html ^
/ReportType=HTML
/ReturnTargetExitCode">
<Output TaskParameter="ExitCode" PropertyName="DotCoverExitCode" />
</Exec>
<Message Text="Unit Tests Failed!" Condition="$(DotCoverExitCode) != '0'"/>
</Target>
创建二进制日志(-bl
Msbuild参数)时,它是否显示正在执行的项目和目标?我建议你使用这个工具。谢谢你提供的工具,我会看一看。你好,你的答案解决了我的问题,我使用了ReturnTargetExitCode,这个参数在我的任务中,但我当时没有使用它,现在没事了。谢谢和问候
<Target Name="CoverageReport" AfterTargets="CopySqlFiles" Condition="$(Configuration) == Integration">
<Exec Command="..\packages\JetBrains.dotCover.CommandLineTools.2018.1.3\tools\dotCover.exe analyse /TargetExecutable=..\packages\NUnit.ConsoleRunner.3.8.0\tools\nunit3-console.exe /ReturnTargetExitCode /TargetArguments="$(TargetPath)" /Filters=-:nunit.framework;-:IntegrationProjectTest;-:type=MyNamespace.View.*;-:type=*Test /TargetWorkingDir=$(TargetDir) /Output=$(TargetDir)\TestResult\MyCoverageReport.html /ReportType=HTML" />
</Target>
<Target Name="CoverageReport" AfterTargets="CopySqlFiles" Condition="$(Configuration) == Integration">
<Exec Command="..\packages\JetBrains.dotCover.CommandLineTools.2018.1.3\tools\dotCover.exe analyse ^
/TargetExecutable=..\packages\NUnit.ConsoleRunner.3.8.0\tools\nunit3-console.exe ^
/ReturnTargetExitCode ^
/TargetArguments="$(TargetPath)" ^
/Filters=-:nunit.framework;-:IntegrationProjectTest;-:type=MyNamespace.View.*;-:type=*Test ^
/TargetWorkingDir=$(TargetDir) ^
/Output=$(TargetDir)\TestResult\MyCoverageReport.html ^
/ReportType=HTML
/ReturnTargetExitCode">
<Output TaskParameter="ExitCode" PropertyName="DotCoverExitCode" />
</Exec>
<Message Text="Unit Tests Failed!" Condition="$(DotCoverExitCode) != '0'"/>
</Target>