JUnit 4
Duplication

Intro
  • For duplication, we look at places in code where there are six or more lines of code that are exactly the same.
  • Before duplication is calculated, the code is cleaned to remove empty lines, comments, and frequently duplicated constructs such as imports.
  • You should aim at having as little as possible (<5%) of duplicated code as high-level of duplication can lead to maintenance difficulties, poor factoring, and logical contradictions.
Learn more...
Duplication Overall
  • 1% duplication:
    • 7,000 cleaned lines of cleaned code (without empty lines, comments, and frequently duplicated constructs such as imports)
    • 70 duplicated lines
  • 5 duplicates
system1% (70 lines)
Duplication per Extension
java1% (70 lines)
Duplication per Component (primary)
org/junit/internal1% (22 lines)
org/junit/runners1% (22 lines)
junit/framework2% (13 lines)
org/junit3% (13 lines)
junit/textui0% (0 lines)
junit/runner0% (0 lines)
junit/extensions0% (0 lines)
org/junit/experimental0% (0 lines)
org/junit/validator0% (0 lines)
org/junit/runner0% (0 lines)
org/junit/function0% (0 lines)
org/junit/rules0% (0 lines)
org/junit/matchers0% (0 lines)
Longest Duplicates
The list of 5 longest duplicates.
Size#FoldersFilesLinesCode
8 x 2 src/main/java/org/junit/internal/runners
src/main/java/org/junit/internal/runners
MethodRoadie.java
ClassRoadie.java
135:146 (7%)
58:69 (17%)
view
8 x 2 src/main/java/org/junit/runners/parameterized
src/main/java/org/junit/runners/model
TestWithParameters.java
TestClass.java
55:64 (20%)
315:324 (4%)
view
7 x 2 src/main/java/junit/framework
src/main/java/org/junit
ComparisonFailure.java
ComparisonFailure.java
34:54 (43%)
47:67 (9%)
view
6 x 2 src/main/java/junit/framework
src/main/java/org/junit
ComparisonFailure.java
ComparisonFailure.java
9:23 (37%)
18:37 (8%)
view
6 x 2 src/main/java/org/junit/internal/runners
src/main/java/org/junit/runners/model
TestClass.java
TestClass.java
88:94 (11%)
172:178 (3%)
view