在VSTS中显示代码分析警告

问题描述 投票:0回答:2

我在我的Visual Studio Team Services构建中使用了setup Static Code Analysis。我正在为我的解决方案使用“MSBuild”构建步骤,在构建日志中,它显示了以##[warning]开头的999多行:

2017-11-09T13:52:34.7970784Z ## [警告] myfilename.cs(753,17):警告CA2200:重新抛出捕获的异常更改堆栈信息。

当“system.debug”设置为true时,我们也会看到vso解析这些警告,并且日志中的999多行显示如下:

2017-11-15T12:30:40.1964968Z ## [警告] myfilename.cs(28,33):警告CS0109:成员'Invoice.ColumnOptions'不隐藏可访问的成员。新关键字不是必需的。 2017-11-15T12:30:40.1964968Z ## [debug]已处理:## vso [task.logissue type = Warning; sourcepath = myfilename.cs; linenumber = 28; columnnumber = 33; code = CS0109;]成员' XXX'不会隐藏可访问的成员。新关键字不是必需的。

我希望999+静态分析警告会出现在构建概述中的某个位置(即https://MYSITE.visualstudio.com/MYPROJECT/_build/index?buildId=XXX&_a=summary&tab=details)。但是它只显示11个构建警告,没有别的。另请参见下面的屏幕截图。如何在此构建概述中显示静态代码分析警告?甚至可以概括一下已经触发的警告类型的概述?

Build overview

continuous-integration azure-devops code-analysis
2个回答
1
投票

在与VSTS合作几个月后,我的经验如下:

  • 代码分析警告将显示在构建摘要中
  • VSTS只会显示前11个警告
  • 因此,如果在11个构建警告之后打印代码分析警告,则它们将不会显示。

当与基线相比有更多警告时,我们已经开始使用Build Quality Checks来使构建失败。


0
投票

是的,只是构建摘要的“问题”部分中的构建显示警告的一部分。

解决方法是您可以通过Logging Commands##vso[task.uploadsummary]local file path)上传代码分析结果文件(xml),并将内容添加到构建/发布摘要(链接到关联更改部分的工作项下方)

  1. 添加Powershell任务
  2. 调用logging命令上传代码分析结果

例如:

param(
[string]$p
)
Write-Host "##vso[task.uploadsummary]$p"

参数:

-p $(Build.SourcesDirectory)\WebAppAzureProfile\bin\WebAppAzureProfile.dll.CodeAnalysisLog.xml

© www.soinside.com 2019 - 2024. All rights reserved.