Skip to content

Commit b6642a6

Browse files
committed
Improve README with images of the new step.
1 parent b5c6c9a commit b6642a6

13 files changed

Lines changed: 36 additions & 23 deletions

README.md

Lines changed: 36 additions & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
[![Codecov](https://codecov.io/gh/jenkinsci/code-coverage-api/branch/master/graph/badge.svg)](https://codecov.io/gh/jenkinsci/code-coverage-api-plugin/branch/master)
88
[![CodeQL](https://github.com/jenkinsci/code-coverage-api/workflows/CodeQL/badge.svg?branch=master)](https://github.com/jenkinsci/code-coverage-api/actions/workflows/codeql.yml)
99

10-
The Jenkins code coverage plug-in collects reports of code coverage or mutation coverage tools. It has support for the following report formats:
10+
The Jenkins Code Coverage Plug-in collects reports of code coverage or mutation coverage tools. It has support for the following report formats:
1111

1212
- [JaCoCo](https://www.jacoco.org/jacoco)
1313
- [Cobertura](https://cobertura.github.io/cobertura/)
@@ -25,46 +25,59 @@ This project was part of [GSoC 2018](https://jenkins.io/projects/gsoc/2018/code-
2525

2626
## Features
2727

28-
The code coverage plug-in provides the following features when added as a post build action (or step)
29-
to a job:
28+
The code coverage plug-in provides the following features when added as a post build action (or step) to a job:
3029

31-
* **Coverage analysis of projects and pull requests:**
32-
* all project code (Project Coverage)
33-
* code changes (Modified Lines or Files Coverage)
34-
* coverage changes created by changed test cases (Indirect Coverage Changes)
35-
* **Modernized coverage report visualization:**
36-
* Coverage overview and trend
30+
* Coverage analysis of projects and pull requests: The plugin now computes and shows the absolute coverage of the project, the coverage of the modified files and the coverage of the modified lines, so you can see how the changes actually affect the code coverage. Additionally, the delta of these coverages with respect to the reference build are computed and the coverage changes created by changed test cases (indirect coverage changes).
31+
![Coverage overview and trend](./images/summary.png)
3732

38-
![alt text](./images/reportOverview_screen.PNG "Coverage overview and trend")
33+
* Coverage overview and trend:
34+
35+
![Coverage overview and trend](./images/reportOverview_screen.PNG)
3936

40-
* Colored project coverage tree map for line and branch coverage
37+
* Colored project coverage tree map for line, branch, instruction and mutation coverage:
4138

42-
![alt text](./images/reportTree_screen.PNG "Colored project coverage tree map")
39+
![Colored project coverage tree map](./images/reportTree_screen.PNG)
4340

44-
* Source code navigation
41+
* Source code navigation with a configuration option to store the source code files for all builds, for current build only, or for changed files only:
4542

46-
![alt text](./images/reportFile_screen.PNG "Source code navigation")
43+
![Source code navigation](./images/reportFile_screen.PNG)
4744

48-
* Specific source code view for specifically analyzing the coverage of code changes (Change Coverage):
45+
* Specific source code view for analyzing the coverage of changed code lines:
4946

50-
![alt text](./images/reportCC_screen.PNG "Specific source code view for Change Coverage")
47+
![Specific source code view for Change Coverage](./images/reportCC_screen.PNG)
5148

52-
* Specific source code view for specifically analyzing the coverage after test changes (Indirect Coverage Changes):
49+
* Specific source code view for analyzing the coverage changes that are a result of test changes (indirect coverage changes):
5350

54-
![alt text](./images/reportICC_screen.PNG "Specific source code view for Indirect Coverage Changes")
51+
![Specific source code view for Indirect Coverage Changes](./images/reportICC_screen.PNG)
5552

56-
* **Customizable coverage overview for the Jenkins dashboard view and for build results:**
53+
* Customizable coverage overview for the Jenkins dashboard view and for build results:
5754
![alt text](./images/dashboard_screen.PNG "Analysis overview for Jenkins dashboard")
58-
![alt text](./images/buildview_screen.PNG "Analysis overview for Jenkins build result")
55+
56+
* Quality Gates: You can specify an arbitrary number of quality gates that allow to set the build to unstable or failed if the thresholds are not met. For each quality gate the metric (branch coverage, complexity, etc.) and the baseline (whole project, changed files, etc.) can be defined.
57+
![Quality Gates](./images/quality-gates.png)
58+
59+
* Cyclomatic Complexity and LOC metrics: Several coverage parsers support the measurement of cyclomatic complexity and lines of code. These metrics are now computed and recorded as well:
60+
![Cyclomatic Complexity and LOC metrics](./images/all-metrics.png)
61+
62+
* The recorder has been extended with a native step that is capable of setting the step status (unstable, failed, ok):
63+
![Native step](./images/step.png)
64+
65+
* GitHub checks report to show the detailed line and branch coverage results for pull request:
66+
![Code Coverage Checks Overview](./images/jacoco-coverage-checks.png)
67+
![Code Coverage Checks Annotations](./images/jacoco-coverage-checks-annotations.png)
68+
69+
* GitHub checks report to show the detailed line and mutation coverage results for pull request:
70+
![Mutation Coverage Checks Overview](./images/pit-coverage-checks.png)
71+
![Mutation Coverage Checks Annotations](./images/pit-coverage-checks-annotations.png)
72+
5973

6074
## Usage
6175

62-
:exclamation: The plugin does not run the code coverage, it just visualizes the results reported by such tools.
63-
You still need to enable and configure the code coverage tool in your build file or Jenkinsfile.
76+
:exclamation: The plugin does not run the code coverage, it just visualizes the results reported by such tools. You still need to enable and configure the code coverage tool in your build file or Jenkinsfile. :exclamation:
6477

6578
### Supported project types
6679

67-
The Warnings Next Generation plugin supports the following Jenkins project types:
80+
The Code Coverage Plug-in supports the following Jenkins project types:
6881

6982
- Freestyle Project
7083
- Maven Project

images/all-metrics.png

73 KB
Loading

images/buildview_screen.PNG

-10.2 KB
Binary file not shown.

images/config-add-adapter.png

-21.3 KB
Binary file not shown.

images/config.png

-68.4 KB
Binary file not shown.
45.6 KB
Loading

images/jacoco-coverage-checks.png

119 KB
Loading
42.9 KB
Loading

images/pit-coverage-checks.png

109 KB
Loading

images/quality-gates.png

69.1 KB
Loading

0 commit comments

Comments
 (0)