Skip to content

Commit f0d2574

Browse files
minnieliuMinnie Liu
andauthored
Add Test Coverage tab for Communication (Azure#18336)
* Add Test Coverage tab for Communication * Address code review comments Co-authored-by: Minnie Liu <peiliu@microsoft.com>
1 parent 1dc2037 commit f0d2574

File tree

1 file changed

+24
-0
lines changed

1 file changed

+24
-0
lines changed

eng/pipelines/templates/jobs/archetype-sdk-tests.yml

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,20 @@ jobs:
149149
${{ insert }}: ${{ parameters.TestStepMavenInputs }}
150150
env: ${{ parameters.EnvVars }}
151151

152+
- task: Maven@3
153+
displayName: 'Generate aggregate code coverage report'
154+
condition: and(eq(variables['OsName'], 'Windows'), eq(variables['JavaTestVersion'], '1.11'), eq('${{ parameters.ServiceDirectory }}', 'communication'))
155+
inputs:
156+
mavenPomFile: sdk/${{ parameters.ServiceDirectory }}/pom.xml
157+
options: -Pcoverage
158+
mavenOptions: '$(MemoryOptions) $(LoggingOptions)'
159+
javaHomeOption: 'JDKVersion'
160+
jdkVersionOption: $(JavaTestVersion)
161+
jdkArchitectureOption: 'x64'
162+
goals: jacoco:report-aggregate
163+
# we want to run this when TestFromSource isn't true
164+
condition: and(succeeded(), ne(variables['TestFromSource'],'true'))
165+
152166
- ${{ parameters.PostRunSteps }}
153167

154168
- ${{ if ne(parameters.DisableAzureResourceCreation, 'true') }}:
@@ -166,3 +180,13 @@ jobs:
166180
testRunTitle: 'Live tests for ${{ parameters.ServiceDirectory }} $(DisplayName)'
167181
${{ if ne(parameters.TestResultsFiles, '') }}:
168182
testResultsFiles: ${{ parameters.TestResultsFiles }}
183+
184+
# Azure DevOps only seems to respect the last code coverage result published, so only do this for Windows + Java LTS.
185+
# Code coverage reporting is setup only for Track 2 modules.
186+
- task: PublishCodeCoverageResults@1
187+
condition: and(eq(variables['OsName'], 'Windows'), eq(variables['JavaTestVersion'], '1.11'), eq('${{ parameters.ServiceDirectory }}', 'communication'))
188+
inputs:
189+
codeCoverageTool: JaCoCo
190+
summaryFileLocation: sdk/${{ parameters.ServiceDirectory }}/target/site/jacoco-aggregate/jacoco.xml
191+
reportDirectory: sdk/${{ parameters.ServiceDirectory }}/target/site/jacoco-aggregate/
192+
failIfCoverageEmpty: false

0 commit comments

Comments
 (0)