Hi Gua,

 

Thanks!!!  The results for both VS and GCC builds in Azure look really good.

 

It even visually shows some branches and APIs calls missing coverage in the unit tests for the SafeIntLib.

 

https://dev.azure.com/tianocore/edk2-ci/_build/results?buildId=75036&view=codecoverage-tab

 

Search for “SafeIntLib

 

Mike

 

From: Guo, Gua <gua.guo@intel.com>
Sent: Monday, January 2, 2023 3:57 AM
To: devel@edk2.groups.io; Guo, Gua <gua.guo@intel.com>; Kinney, Michael D <michael.d.kinney@intel.com>; Michael Kubacki <mikuback@linux.microsoft.com>
Subject: RE: [edk2-devel] [PATCH v8 0/3] Add code coverage support for GCC/MSVC

 

@Kinney, Michael D and @Michael Kubacki everything fix now.

 

Leverage ReportGenerator https://marketplace.visualstudio.com/items?itemName=Palmmedia.reportgenerator to create code coverage pipeline.

 

PR: https://github.com/tianocore/edk2/pull/3349

 

“Job2 (Build Agent : windows-2019)” must require for Windows build agent because ReportGenerator is “Windows dot-net” specific. So I add some dependency to let it support for both GCC5 and VS2019.

 

 

 

 

 

 

 

 

Thanks,

Gua

-----Original Message-----
From: devel@edk2.groups.io <devel@edk2.groups.io> On Behalf Of Guo, Gua
Sent: Monday, January 2, 2023 7:25 PM
To: devel@edk2.groups.io
Cc: Guo, Gua <gua.guo@intel.com>
Subject: [edk2-devel] [PATCH v8 0/3] Add code coverage support for GCC/MSVC

 

From: Gua Guo <gua.guo@intel.com>

 

V1: Add coverage option for GCC

V2: Add ReadMe.md for how to generate coverage report

V3: Add VS2019 and GCC code coverage support

V4: Add VS2019 and GCC Azure CI/CD support

V5: Fix some typo and some flow issue

V6: Remove html coverage information

  - Due to python 3.11 install lxml will be failure,

  pycobertura need it to convert cobertura format to

  html file.

  - Add section for developer how to use OpenCppCoverage

  on IDE Visual Studio

V7: Remove redundant code and add code coverage pipeline support

  - Remove redundant code on HostBasedUnitTestRunner.py

  - Unify coding rule on HostBasedUnitTestRunner.py

  - Add CodeCoverage Azure pipeline support for GCC5 and VS2019

 

Gua Guo (3):

  UnitTestFrameworkPkg: Add code coverage support for GCC

  BaseTools/Plugin: Add coverage support for Unit Test

  .azurepipelines: Install code coverage tool

 

.azurepipelines/Ubuntu-GCC5.yml               |   5 +-

.azurepipelines/Windows-VS2019.yml            |   5 +

.../templates/pr-gate-build-job.yml           |  36 +++++++

.azurepipelines/templates/pr-gate-steps.yml   |   4 +

.../HostBasedUnitTestRunner.py                | 101 +++++++++++++++++-

UnitTestFrameworkPkg/ReadMe.md                |  41 +++++++

.../UnitTestFrameworkPkg.ci.yaml              |   1 +

.../UnitTestFrameworkPkgHost.dsc.inc          |   3 +-

pip-requirements.txt                          |   2 +

9 files changed, 195 insertions(+), 3 deletions(-)

 

--

2.31.1.windows.1