I create pipeline SonarQube in Azure DevOps
But it always shows me the test results of one layer If I add “projects:‘Application.Test/Application.Test.csproj’” show only coverage layer Applicaion But I use “‘**Test/**Test.csproj’” show only coverage layer Web
If I add “projects:‘Application.Test/Application.Test.csproj’” show only coverage layer Applicaion But I use “‘**Test/**Test.csproj’” show only coverage layer Web
- task: SonarQubePrepare@4
inputs:
SonarQube: 'SonaQube'
scannerMode: MSBuild
projectKey: 'mykey'
projectName: 'projectname'
projectVersion: '$(Build.BuildNumber)'
extraProperties: |
sonar.cs.opencover.reportsPaths=**/coverage.opencover.xml
sonar.cs.xunit.reportsPaths=**/TestResults.xml
sonar.exclusions=Persistence/Configurations/**, Persistence/**, Migrations/**, Entities/**/**, Program.cs, ConfigureServices.cs
- task: DotNetCoreCLI@2
displayName: Restore
inputs:
command: restore
projects: '**/*.csproj'
feedsToUse: config
nugetConfigPath: nuget.Config
- task: DotNetCoreCLI@2
displayName: Build
inputs:
command: build
projects: '$(lowerProjectName).csproj'
arguments: '--configuration $(BuildConfiguration)'
- task: DotNetCoreCLI@2
displayName: Build Test Project
inputs:
command: build
projects: '**Test/**Test.csproj'
arguments: '--configuration $(BuildConfiguration)'
- task: DotNetCoreCLI@2
displayName: Test
inputs:
command: test
projects: '**Test/**Test.csproj'
publishTestResults: false
arguments: '--configuration $(BuildConfiguration) /p:CollectCoverage=true /p:CoverletOutput=$(Build.SourcesDirectory)\TestResults\ /p:CoverletOutputFormat="\"cobertura,opencover\"" -l:xunit --no-build'
- powershell : |
dotnet new tool-manifest --force
dotnet tool install dotnet-reportgenerator-globaltool
displayName: Install Report Generator
- task: DotNetCoreCLI@2
displayName: Report Generator
inputs:
command: custom
projects: '**Test/**Test.csproj'
custom: reportgenerator
arguments: '"-reports:$(Build.SourcesDirectory)\TestResults\coverage.cobertura.xml" "-targetdir:$(Build.SourcesDirectory)\TestResults\Reports" -tag:$(Build.BuildNumber) -reportTypes:htmlInline'
- task: SonarQubeAnalyze@4
displayName: 'Run Code Analysis'
- task: PublishTestResults@2
displayName: Publish Test Results
inputs:
testResultsFormat: XUnit
testResultsFiles: '**/TestResults.xml'
- task: PublishCodeCoverageResults@1
displayName: 'Publish code coverage'
inputs:
codeCoverageTool: Cobertura
summaryFileLocation: '**/coverage.cobertura.xml'
reportDirectory: '$(Build.SourcesDirectory)\TestResults\Reports'```