diff --git a/Directory.Build.targets b/Directory.Build.targets index e11804c23b..bbb9d56b9b 100644 --- a/Directory.Build.targets +++ b/Directory.Build.targets @@ -2,6 +2,10 @@ + + + + lib @@ -35,5 +39,45 @@ + + + false + + + true + + true + true + true + opencover + $(BaseOutputPath)$(PlatformConfig)\coverage\coverage.opencover.xml + + + ExcludeFromCodeCoverage + + + + + + + + + + + + + diff --git a/build/Codecoverage.proj b/build/Codecoverage.proj index 03595f7ca8..c8c68a762b 100644 --- a/build/Codecoverage.proj +++ b/build/Codecoverage.proj @@ -16,12 +16,12 @@ <_ReportGeneratorPath>$(PkgReportGenerator)\tools\net47\ReportGenerator.exe - - + + - <_CodecovArgs Include="-f;$(BaseOutputPath)$(PlatformConfig)\coverage\Cobertura.xml" /> - + <_CodecovArgs Include="-f;$(ArtifactsDir)bin\coverage\Cobertura.xml" /> + <_CodecovArgs Include="--required" /> diff --git a/build/ci/job-template.yml b/build/ci/job-template.yml index 5a0dd8a4ee..af7645b1a2 100644 --- a/build/ci/job-template.yml +++ b/build/ci/job-template.yml @@ -116,10 +116,10 @@ jobs: - ${{ if eq(parameters.innerLoop, 'false') }}: - ${{ if and(eq(parameters.runSpecific, 'false'), eq(parameters.useVSTestTask, 'false')) }}: # TODO: Code coverage needs to be fixed. - - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci #-coverage=${{ parameters.codeCoverage }} + - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci /p:RestorePackagesPath=$(Build.SourcesDirectory)\packages /p:NUGET_PACKAGES=$(Build.SourcesDirectory)\packages /p:Coverage=${{ parameters.codeCoverage }} displayName: Run All Tests. - ${{ if and(eq(parameters.runSpecific, 'true'), eq(parameters.useVSTestTask, 'false')) }}: - - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci /p:TestRunnerAdditionalArguments='-trait$(spaceValue)Category=RunSpecificTest' /p:RestorePackagesPath=$(Build.SourcesDirectory)\packages /p:NUGET_PACKAGES=$(Build.SourcesDirectory)\packages #-coverage=${{ parameters.codeCoverage }} + - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci /p:TestRunnerAdditionalArguments='-trait$(spaceValue)Category=RunSpecificTest' /p:RestorePackagesPath=$(Build.SourcesDirectory)\packages /p:NUGET_PACKAGES=$(Build.SourcesDirectory)\packages /p:Coverage=${{ parameters.codeCoverage }} displayName: Run Specific Tests. - ${{ if and(eq(parameters.buildScript, 'build.cmd'), eq(parameters.useVSTestTask, 'true')) }}: - task: VSTest@2 @@ -143,7 +143,7 @@ jobs: collectDumpOn: onAbortOnly publishRunAttachments: true - ${{ if eq(parameters.innerLoop, 'true') }}: - - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci /p:TestRunnerAdditionalArguments='-notrait$(spaceValue)Category=SkipInCI' /p:RestorePackagesPath=$(Build.SourcesDirectory)\packages /p:NUGET_PACKAGES=$(Build.SourcesDirectory)\packages #-coverage=${{ parameters.codeCoverage }} + - script: ${{ parameters.buildScript }} /p:Build=false -configuration $(_configuration) /p:TargetArchitecture=${{ parameters.architecture }} /p:TestArchitectures=${{ parameters.architecture }} -test -integrationTest -ci /p:TestRunnerAdditionalArguments='-notrait$(spaceValue)Category=SkipInCI' /p:RestorePackagesPath=$(Build.SourcesDirectory)\packages /p:NUGET_PACKAGES=$(Build.SourcesDirectory)\packages /p:Coverage=${{ parameters.codeCoverage }} displayName: Run CI Tests. - script: $(dotnetPath) msbuild -restore build/Codecoverage.proj displayName: Upload coverage to codecov.io