From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from NAM12-BN8-obe.outbound.protection.outlook.com (NAM12-BN8-obe.outbound.protection.outlook.com [40.92.21.14]) by mx.groups.io with SMTP id smtpd.web11.2830.1672800565482978854 for ; Tue, 03 Jan 2023 18:49:25 -0800 Authentication-Results: mx.groups.io; dkim=fail reason="body hash did not verify" header.i=@outlook.com header.s=selector1 header.b=eCN1CC1n; spf=pass (domain: outlook.com, ip: 40.92.21.14, mailfrom: spbrogan@outlook.com) ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=GJhqO8zWG8/4PE/JzeoIxhjC0PRRm+ao4nBPwALlltjNpjQ69QOPN9N361s3ZN6BFiRpBhiB466Is8DYFicfjEwniyE03pq7mXGQjxZt5bG/pK/5/KwyuTdzViByZtEQAElovW/EWXesWQbKucNo1ubdwiZDJLHNX0DSm+kVcumkK1+SDRQelAMd4R7q8iCkwKjhk6lWXSQlJ1zPa6a+pdztdI+058r6VFFD8bS/513AtBpdKpYUm43qy/aVtiTrbG7zcRYWy4vlm7j2O05dd9Fy0K5F0wH1/KDPZkaSs/YE4Kc7a6n/HYBGvymfepRBk5yTKFK1dqoxZofthr9FGA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TuFTNYnpcbO0sX3a7Uwp/czE4MXnVEtdxEZ/cCQC7LA=; b=BP/D7asxDSkZDHEfTfs65wz26lcDriaRNAtSjk6WsV8UWH0i4ETTyVDtt3eLLpyqIhNrCyBNj3irfRdWgt/5UL20L0SN6MB1F9Mj3Dr4Bmu9rgwMuKX88f8GTf8kgwBzakNuH536JDBgJWdSV7pdG0fQb5zCPl4HbtoSTpAsKLo9Wtve+lcqGLqTrToztmNpj1qYaH+kI6IydQMHPR1Jd8CdfgiaalJ4D1Y0GbFO47IY2Ify2P5dLD1XXk134nISe4tOjj6pqnxg68W3lw69Um4BgWqFD5wKqajbV73SIazgED8PjYR5u4rYMEfNuvCOpYxlNfWqMibUbl06Y2Wnpg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TuFTNYnpcbO0sX3a7Uwp/czE4MXnVEtdxEZ/cCQC7LA=; b=eCN1CC1nFgzFZ2xNc4egScmNnunqz2K79EPNlpGZg7P/EzjiAlv5YEus2PTKVa6ZpbuZNINMTMueZWSoqm421qvCvX5l0HhyVCFJQs/3AE9KQGR9W9xgGoQCoyo9NUwO4IEVjXld/QIl7ua7bc36kRHC5cc1+Jg8XgbMH2a02SOA/OGdAjZEmA9jqv+2MV1xoOAKqJJJdgWcW2vZio55gxSR7fEu3z3bfSfmgv+RQFVolbsJEh6kPy8kmr+uClkP0mR3Tw0xs9vdL0eZJ13XJXUafhmSQmelsSSZx8/UtMXrBFaSd0ayykt9zmF17yxn4wRSbo7KJVm7VrkBMabvUw== Received: from BY3PR19MB4900.namprd19.prod.outlook.com (2603:10b6:a03:354::11) by CH2PR19MB4006.namprd19.prod.outlook.com (2603:10b6:610:a3::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5944.19; Wed, 4 Jan 2023 02:49:23 +0000 Received: from BY3PR19MB4900.namprd19.prod.outlook.com ([fe80::c0e5:2c6b:cefe:1ba7]) by BY3PR19MB4900.namprd19.prod.outlook.com ([fe80::c0e5:2c6b:cefe:1ba7%5]) with mapi id 15.20.5944.019; Wed, 4 Jan 2023 02:49:23 +0000 Message-ID: Date: Tue, 3 Jan 2023 18:49:21 -0800 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:102.0) Gecko/20100101 Thunderbird/102.5.1 Subject: Re: [edk2-devel] [PATCH v8 0/3] Add code coverage support for GCC/MSVC To: devel@edk2.groups.io, gua.guo@intel.com References: From: "Sean" In-Reply-To: X-TMN: [Nu5SG1PSfjuguj8DgidutseGJ5QzWncUaMYKWwas5HRaCtNNR4IRjfHJTxRrYRk1] X-ClientProxiedBy: MW4PR02CA0017.namprd02.prod.outlook.com (2603:10b6:303:16d::24) To BY3PR19MB4900.namprd19.prod.outlook.com (2603:10b6:a03:354::11) Return-Path: spbrogan@outlook.com X-Microsoft-Original-Message-ID: <96a9aedd-ecef-9d6b-f8a6-820259f51b52@outlook.com> MIME-Version: 1.0 X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: BY3PR19MB4900:EE_|CH2PR19MB4006:EE_ X-MS-Office365-Filtering-Correlation-Id: 24675e12-bb08-4d9e-9ff0-08daedfe48d0 X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: DfoMoNoAGPQvZq4k2arilXOre5HxNYwjdY+5QE9xLwIlqbVi6cjnfpqOLDDgH1He0VIcEjqvf84ESLxcjJNI2Mwp+Yztz9J/KRotF7XHgAwIGyKFjEMUEQiEXfRS19w/QZa6nBy27/71MXKyZConXmsFQZ8/AAL7fWQuEBl5IXBPP9u4XEMkFjKFLX9Nlx+SkKZfj5/7CCYi5ANNC2r7QudTjiMZ0zId3ySyZ2rzreJDJB9/zP1uQwbJE48VZZt0jlKBDIDdszQenQOseu9AUDKZQ8erCoMUW2OqH69MWf6KNV0rIKD11z1kKeW6OVNfTBwIMFrB7X6b08T6Otk2RKpurwNkPnr/LRx8f2Nsv9m2CjuXH7YNBkA0ZEdfMDp5/cZ8VDqJuJ0VBEGBjLt/wkVGvMUun2jqjGqQzDTO3gyrxOwP1Kr0C8zd2qLqeXzXQuWTboYbdYFV0R1u/ZTjFBqGzwILtcUu7GjbTk/DTVwYjQvNufwIJB04jYdtygl5Q4wuC2dLIoAu+7pOwbEpjrAdI71b/gEgpfPJhQrDAne/K3gE0E0Z3g3lsLKezJsCHBVVsrnNjw6khrf7aEcFl58J2sk9rW9FSVtQTz3k2BVsSKZlxEsvj4Bz7o2SS9ZnJ9KNLUp0dWNuVx9pDF83hN/x5UKfANKFlB38hBS7RvY= X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?E6h8UROn0LRCy8stfMp0Bd9qP07uAjSJDNwKDBWzRbwR3JTc+D4GqYAr0DIH?= =?us-ascii?Q?AthfVOEKMm4onn22ivresh0CvbmWY06t4fx4jHqmE3QLYJ0IGsxZiYG7Y5OM?= =?us-ascii?Q?XxEB0gWG2duI7L1gjxwEEiMQBwO4GgpiHPiGjL1df03/BBQIgiZj+k5Vk7sf?= =?us-ascii?Q?7x0la1Lv0eDlfgGybM883K+F4XUSZxHBPto2e3YiHnnjo/Iyhz9JEaQYUTGL?= =?us-ascii?Q?TI94NiGYZGZSwXn4JtNSt3YBPgHkiUhK/Nk9DS6B/AoCq7PY5hIfUkvPj4Dj?= =?us-ascii?Q?SqjWaDFGHBwuQ7GYoPLyeUIN3qoF3/Jh7D7HTtJuBDnijCxoIKPPg6CA1m9B?= =?us-ascii?Q?3ZYDOTuV9LX+s2wKwruJB8b5ULkRgUw7qKtyNH1+t7+IFLXQiekqdUxeKbRu?= =?us-ascii?Q?nT5jrX1CLjQuAJ3VTc/LI6xcghCDB4UWobhCSxqqzcTJRynfaxiKnP34EHtp?= =?us-ascii?Q?QdQu6QWIOT5VcLU6EKsPkzjyq4kPZ6Pp9e31Rqj133uvvFCZRAe3JSzfR3qX?= =?us-ascii?Q?E5NnM+SIG/F3aE1TwfhTsVuKRXFJ8/8z4AcVatyELlVgJdX8ielJi4Kb+0k9?= =?us-ascii?Q?S8vskIegewBFXMUy709zhORU4gmKHjblggU7DVQoQbL6gYFXJgcidibCtJ3S?= =?us-ascii?Q?cyzxicq6k6efSfN5ou1pXe6nYzrRlEshhGBgTYH94CfCbqp47SzbrIvLKhaE?= =?us-ascii?Q?l5q+/IQnl/zNsDzI4owpA8rn2oJzQFJWekNvMOdhrZA+bMDkwxiIeEFLdlZZ?= =?us-ascii?Q?gWzl/lXA+d7X35DIygibDT3huie5zHFpp44qUFHc/6O5POUMjdkrtljHsFFv?= =?us-ascii?Q?lDAI51uto7ssgqjGqGiejSgnqJh5/caa2JoGy2GxLMP0l5u4BQ1fnRi2gp/e?= =?us-ascii?Q?8/yz7QUkJI8rl/e2g4hB0fYZK3wnEedYbbwJ3PtxwoxWvBoXsNItKuGSrAnQ?= =?us-ascii?Q?aJE/cK8kYo2RN5jBWYY9sbmfVnwiHwfnz0+6N4FdzJ4k/57Zg/svfyyA/8va?= =?us-ascii?Q?ZFyCO0XjRyU1HITBrny6fUpIgw9lUFvCBtzEgse1lVhAjRSovy05nHk5iPo5?= =?us-ascii?Q?Gw6A0pyDbUc7Jvv3QHpFywxDuOCbmfMkKL6CI3Srp6SOUBdxA7cM4GGu7TFg?= =?us-ascii?Q?x/k9vsJx9tFWLfppfRi/5KQdLputASkHE8b8/fnq4/QFVZO4JTF3ZM6+eB6A?= =?us-ascii?Q?MSPoSwA9Y7SkBMjiD/M4+0Ri/9L1qjADRW1MkYWWXq4b9GvK47EKLp7ki5ue?= =?us-ascii?Q?IOPrb0Fg9WHEJx7YTv/bMy9FwNl3WVIq4zrt15rMR47iLM8elwJH5Bw8fHwn?= =?us-ascii?Q?rIHqx72r5g57GJhdgXcVDKVc/ZD5Isl2eoOIl3D4I51EJw=3D=3D?= X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 24675e12-bb08-4d9e-9ff0-08daedfe48d0 X-MS-Exchange-CrossTenant-AuthSource: BY3PR19MB4900.namprd19.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2023 02:49:22.9673 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: CH2PR19MB4006 Content-Language: en-US Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: quoted-printable Looks like a great first step for code coverage collection. The container support patch series will need to be updated (since it=20 hasn't yet been merged) and it will need to account for the new=20 requirements for code coverage. In the future i would like to see the local experience improved (HTML=20 reports generated) and metrics tracked per package instead of build=20 wide.=C2=A0 These topics can be discussed at the Monday tools meeting but I= =20 think this series as is should be merged now to start collecting this data. Thanks for all your efforts. Series Reviewed-by: Sean Brogan On 1/2/2023 3:24 AM, Guo, Gua wrote: > From: Gua Guo > > 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(-) >