-
Notifications
You must be signed in to change notification settings - Fork 76
Coverage dashboard column #294
Conversation
Codecov Report
@@ Coverage Diff @@
## master #294 +/- ##
============================================
+ Coverage 67.56% 70.10% +2.54%
- Complexity 595 689 +94
============================================
Files 60 73 +13
Lines 2454 2713 +259
Branches 296 313 +17
============================================
+ Hits 1658 1902 +244
- Misses 699 709 +10
- Partials 97 102 +5
Continue to review full report at Codecov.
|
src/main/java/io/jenkins/plugins/coverage/model/CoverageBuildAction.java
Outdated
Show resolved
Hide resolved
src/main/java/io/jenkins/plugins/coverage/model/util/WebUtil.java
Outdated
Show resolved
Hide resolved
src/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/ColorUtils.java
Outdated
Show resolved
Hide resolved
...n/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageChangeLevel.java
Outdated
Show resolved
Hide resolved
...n/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageChangeLevel.java
Outdated
Show resolved
Hide resolved
src/main/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn.java
Outdated
Show resolved
Hide resolved
src/test/java/io/jenkins/plugins/coverage/model/visualization/colorization/ColoUtilsTest.java
Outdated
Show resolved
Hide resolved
...va/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageChangeLevelTest.java
Outdated
Show resolved
Hide resolved
|
Danke @hd42 für den Review! |
# Conflicts: # plugin/src/main/java/io/jenkins/plugins/coverage/model/CoverageType.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/TreeMapNodeConverter.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/util/WebUtils.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/ColorUtils.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageChangeTendency.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageColorizationLevel.java # plugin/src/main/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn.java # plugin/src/main/resources/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn/column.jelly # plugin/src/main/resources/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn/columnHeader.jelly # plugin/src/main/resources/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn/config.jelly # plugin/src/main/resources/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn/config.properties # plugin/src/test/java/io/jenkins/plugins/coverage/model/CoverageBuildActionTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/CoverageTypeTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/ResultStubs.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/TreeMapNodeConverterTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/testutil/CoverageStubs.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/testutil/JobStubs.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/util/WebUtilsTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/visualization/colorization/ColorUtilsTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageChangeTendencyTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageColorizationLevelTest.java # plugin/src/test/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumnTest.java
…ode-coverage-api-plugin into coverage-visualization
plugin/src/main/java/io/jenkins/plugins/coverage/model/CoverageBuildAction.java
Outdated
Show resolved
Hide resolved
plugin/src/main/java/io/jenkins/plugins/coverage/model/CoverageMetric.java
Show resolved
Hide resolved
plugin/src/main/java/io/jenkins/plugins/coverage/model/CoverageType.java
Outdated
Show resolved
Hide resolved
plugin/src/main/java/io/jenkins/plugins/coverage/model/TreeMapNodeConverter.java
Outdated
Show resolved
Hide resolved
...n/src/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/ColorUtils.java
Outdated
Show resolved
Hide resolved
plugin/src/main/resources/io/jenkins/plugins/coverage/model/Messages.properties
Outdated
Show resolved
Hide resolved
...es/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn/column.jelly
Outdated
Show resolved
Hide resolved
.../main/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CodeCoverageColumn.java
Outdated
Show resolved
Hide resolved
plugin/src/test/java/io/jenkins/plugins/coverage/model/util/FractionFormatterTest.java
Outdated
Show resolved
Hide resolved
plugin/src/test/java/io/jenkins/plugins/coverage/model/util/WebUtilsTest.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a few questions, we can resolve them in a followup PR if required.
| LVL_95(95.0, ColorId.OUTSTANDING), | ||
| LVL_90(90.0, ColorId.EXCELLENT), | ||
| LVL_85(85.0, ColorId.VERY_GOOD), | ||
| LVL_80(80.0, ColorId.GOOD), | ||
| LVL_75(75.0, ColorId.ABOVE_AVERAGE), | ||
| LVL_70(70.0, ColorId.AVERAGE), | ||
| LVL_65(65.0, ColorId.BELOW_AVERAGE), | ||
| LVL_60(60.0, ColorId.BAD), | ||
| LVL_50(50.0, ColorId.VERY_BAD), | ||
| LVL_0(0.0, ColorId.INSUFFICIENT), | ||
| NA(-1.0, ColorId.WHITE); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Wouldn't it make sense to use a class here so that we make the percentage user configurable?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Yes, I also think the colorization should be project specific.
This enum - in long terms - is meant as a fallback colorization when no thresholds have been defined.
For further enhancements, I would suggest another color enum which is used to colorize coverage dependent on the set thresholds (maybe CoverageChangeLevel could be used directly after a rename).
This should act in a similar way, but without any further definitions but the thresholds required.
For example, if the general coverage threshold is 60% and the coverage is 65%, the color should be green for 'good' instead red for 'bad', as provided here.
...rc/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageLevel.java
Outdated
Show resolved
Hide resolved
...rc/main/java/io/jenkins/plugins/coverage/model/visualization/colorization/CoverageLevel.java
Outdated
Show resolved
Hide resolved
.../src/main/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CoverageColumn.java
Outdated
Show resolved
Hide resolved
.../src/main/java/io/jenkins/plugins/coverage/model/visualization/dashboard/CoverageColumn.java
Outdated
Show resolved
Hide resolved
plugin/src/test/java/io/jenkins/plugins/coverage/model/util/WebUtilsTest.java
Outdated
Show resolved
Hide resolved
…used. (If a localized messsage is stored in a static field then the wrong locale will be used.)
|
Just upgraded to latest jenkins LTS with the newest release of code-coverage plugin and now can not create any views with the coveragecolumn by job-dsl 09:36:23 ERROR: Found multiple extensions which provide method coverageColumn with arguments []: [io.jenkins.plugins.coverage.CoverageColumn, io.jenkins.plugins.coverage.model.visualization.dashboard.CoverageColumn] |
|
Can you please create a bug report? Seems that we forgot to delete the old column. Is there a way to specify the class that should be used in JobDSL? The new column is: |
Gernerally, some color utility classes have been added that can be used for visualizing coverage.
These classes are already used for visualizing the coverage within the tree map.
Also, provides a customizable dashboard column which can be used to show different coverage metrics of different coverage types of the latest completed build.
The column cell uses colors in order to highlight the coverage values.
The text can be clicked in order to open the coverage report of the latest completed build.
See #206