Azure DevOps使用JaCoCo配置代码覆盖率

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

我想在Azure DevOps中查看代码覆盖率。

所以我这样配置了azure-pipelines.yml

trigger:
- master

pool:
  vmImage: 'windows-latest'

variables:
  solution: '**/*.sln'
  buildPlatform: 'Any CPU'
  buildConfiguration: 'Release'

steps:
- task: NuGetToolInstaller@1

- task: NuGetCommand@2
  inputs:
    restoreSolution: '$(solution)'

- task: VSBuild@1
  inputs:
    solution: '$(solution)'
    msbuildArgs: '/p:DeployOnBuild=true /p:WebPublishMethod=Package /p:PackageAsSingleFile=true /p:SkipInvalidConfigurations=true /p:DesktopBuildPackageLocation="$(build.artifactStagingDirectory)\WebApp.zip" /p:DeployIisAppPath="Default Web Site" /p:CollectCoverage=true /p:CoverletOutputFormat=jacoco /p:CoverletOutput=$(Build.DefaultWorkingDirectory)/TestResults/Coverage/'''
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'
    maximumCpuCount: true

- task: VSTest@2
  inputs:
    testSelector: 'testAssemblies'
    testAssemblyVer2: |
      **\*test.dll
      !**\*TestAdapter.dll
      !**\obj\**
    searchFolder: '$(System.DefaultWorkingDirectory)'
    codeCoverageEnabled: true
    platform: '$(buildPlatform)'
    configuration: '$(buildConfiguration)'

- task: PublishCodeCoverageResults@1
  inputs:
    codeCoverageTool: 'JaCoCo'
    summaryFileLocation: '$(System.DefaultWorkingDirectory)/TestResults/Coverage/*.xml'

和nuget-package coverlet.collector由Azure DevOps签入添加。我还在步骤VSBuild中添加了/p:CollectCoverage=true /p:CoverletOutputFormat=jacoco /p:CoverletOutput=$(Build.DefaultWorkingDirectory)/TestResults/Coverage/部分。

但是,当我单击上一个运行管道时,它仅显示按钮Download code coverage results和指向.coverage文件的链接。

我没有特定原因决定JaCoCo胜过Cobertura,因此如有必要,可以更改价格。

我如何查看代码覆盖率?

我想在Azure DevOps中查看代码覆盖率。因此,我像这样配置azure-pipelines.yml:触发器:-主池:vmImage:'windows-latest'变量:解决方案:'** / *。sln'...

azure-devops code-coverage jacoco
1个回答
0
投票

Azure DevOps使用JaCoCo配置代码覆盖率

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