Purpose
Unit Test Coverage shows a percentage of a source code covered by unit tests. It is a mix of Line coverage and Condition coverage. The metric can be also calculated for a new code only.
How metric helps
Unit Test Coverage may be a guide for indicating a lack of coverage via Automated Testing - just because Unit Testing is the essential part of the Testing Pyramid. A trend helps to understand how a coverage is changing over time, if it is actually growing or falling and how those trends correlate with plans/investments about appropriate development efforts related to Unit Tests. Lack of coverage is typically a key obstacle for implementing the Continuous Integration and Continuous Delivery (CI/CD) on a project.
Metric:
shows a percentage of a source code covered by unit tests;
shows quality of application;
shows quality of testing;
shows how the project is ready for implementation of CI/CD;
shows if the projects meets the industry quality standards;
highlights the risk of bugs being detected at a later stage of development;
helps to understand how much of your source is tested;
shows the quality of test suite.
TOP-5 problems metric identifies
Too many defects are found during manual and / or automated testing
How metric works
Chart overview
Chart shows Unit Tests Coverage in %:
Calculation
Unit Test Coverage = (CT + CF + LC) / (2*B + EL),
where
CT = conditions that have been evaluated to 'true' at least once
CF = conditions that have been evaluated to 'false' at least once
LC = covered lines = lines_to_cover - uncovered_lines
B = total number of conditions
EL = total number of executable lines (lines_to_cover)
RAG thresholds: Red <= 40%, Amber > 40%, Green > 80 %.
Unit Test Coverage for a New Code, % calculation is Identical to Unit Test Coverage but restricted to new/updated source code.
Data source
Data for the metric can be collected from Sonar.
Copyright © 2024 EPAM Systems, Inc. |
---|
All Rights Reserved. All information contained herein is, and remains the property of EPAM Systems, Inc. and/or its suppliers and is protected by international intellectual property law. Dissemination of this information or reproduction of this material is strictly forbidden, unless prior written permission is obtained from EPAM Systems, Inc. |