PublishCodeCoverageResults@2 - 发布代码覆盖率结果 v2 任务

使用此任务从生成中获取代码覆盖率结果。

语法

# Publish code coverage results v2
# Publish any of the code coverage results from a build.
- task: PublishCodeCoverageResults@2
  inputs:
    summaryFileLocation: # string. Required. Path to summary files. 
    #pathToSources: # string. Path to Source files. 
    #failIfCoverageEmpty: false # boolean. Fail if code coverage results are missing. Default: false.

输入

summaryFileLocation - 摘要文件的路径
string。 必填。

指定包含代码覆盖率统计信息的摘要文件的路径,例如行、方法和类覆盖率。 多个摘要文件合并到单个报表中。 该值可能包含微型模式。 例如:$(System.DefaultWorkingDirectory)/MyApp/**/site/cobertura/coverage.xml有关迷你图模式的详细信息


pathToSources - 源文件的路径
string

当覆盖率 XML 报告不包含源文件的绝对路径时,需要指定源文件的路径。 例如,JaCoCo 报表不使用绝对路径,因此在发布 Java 应用的 JaCoCo 覆盖率时,模式类似于 $(System.DefaultWorkingDirectory)/MyApp/src/main/java/。 此输入应指向主机上源文件的绝对路径。 例如,$(System.DefaultWorkingDirectory)/MyApp/

如果在 Docker 容器中运行测试,则可以使用此输入。


如果缺少代码覆盖率结果,failIfCoverageEmpty - 失败
boolean。 默认值:false

如果代码覆盖率未生成要发布的任何结果,则任务失败。


任务控制选项

除任务输入之外,所有任务都具有控制选项。 有关详细信息,请参阅 控件选项和常见任务属性

输出变量

没有。

言论

在生成管道中使用此任务将运行测试时生成的代码覆盖率结果发布到 Azure Pipelines 或 TFS,并在生成覆盖率 xml 文件后,以便获取管道中的代码覆盖率选项卡和覆盖率报告详细信息。 该任务支持代码覆盖率生成的 xml 格式。 此任务生成包含代码覆盖率详细信息的 cjson 文件。 它还将在生成项目下生成代码覆盖率 HTML 报表。

此任务仅在生成管道中受支持,而不支持发布管道。

Visual Studio Test.NET CoreAntMavenGulp等任务,Grunt 还提供将代码覆盖率数据发布到管道的选项。 如果使用这些任务,则无需在管道中单独发布代码覆盖率结果任务。

先决条件 - 若要在管道中使用发布代码覆盖率结果 v2 任务,请使用 dotnet 7.0.x 任务作为管道中的先决条件。 在发布代码覆盖率 v2 任务之前使用 dotnet 核心任务。

先决条件

若要使用 YAML 管道配置先决条件,请执行以下操作:

# Dotnet core sdk task 7.0.x
- task: UseDotNet@2
  displayName: 'Use .NET Core sdk 7.0.x'
  inputs:
    version: 7.0.x

使用设计器配置先决条件:

显示管道中 .Net Core Sdk 任务的屏幕截图。

  1. 使用以下设置配置发布代码覆盖率结果版本 2 任务。

    显示发布代码覆盖率结果 v2 任务的屏幕截图

  2. 生成完成后,发布代码覆盖率结果 v2 任务成功,选择管道运行摘要中的 代码覆盖率 选项卡以查看代码覆盖率结果。

    显示发布代码覆盖率 V2 任务生成的“代码覆盖率”选项卡的屏幕截图

使用 YAML 通过伊斯坦布尔的 JavaScript 的代码覆盖率结果

若要使用 YAML 发布 JavaScript 的代码覆盖率结果,请参阅这些主题的“生态系统”部分中 自定义 JavaScript,其中包括其他语言的示例。

请参阅使用 Cobertura发布代码覆盖率的 示例。

码头工人

对于使用 Docker 的应用,生成和测试可以在容器内运行,并在容器内生成代码覆盖率结果。 若要将结果发布到管道,应向 发布代码覆盖率结果 任务提供生成的项目。 有关参考,可以在 生成、测试和发布结果下看到类似的示例,其中包含 docker 文件 部分,Docker

查看结果

若要查看管道中的代码覆盖率结果,请参阅 查看代码覆盖率结果

已知问题

发布代码覆盖率结果 v2 任务生成 cjson 文件,并在代码覆盖率选项卡下发布代码覆盖率报告。它还生成一个生成项目,它是从主 index.html 文件链接的一组 HTML 文件。 如果代码覆盖率选项卡无法显示代码覆盖率报告,请检查输入代码覆盖率 xml 文件的格式是否正确,并且具有有效的详细信息。

要求

要求 描述
管道类型 YAML,经典生成
运行时间 代理
需求 没有
功能 此任务不满足作业中后续任务的任何要求。
命令限制 任何
Settable 变量 任何
代理版本 2.144.0 或更高版本
任务类别 测试

另请参阅