##### Overview

- Download PMD 3.9
- What's new in PMD 3.9
- PMD in the news
- PMD-related products and books
- Best practices
- Future directions
- Similar projects
- Credits
- License
- What does 'PMD' mean?

##### Usage

- Installation
- Command line usage
- Ant task usage
- Maven plugin usage
- IDE plugin usage
- Suppressing warnings
- Finding duplicated code
- JSP support

##### Customizing PMD

- Compiling PMD
- How to write a rule
- Writing XPath rules
- How to make a rule set
- How it works

##### For example

- Run PMD on a Sourceforge project

##### Rule Sets

- Index
- Basic
- Braces
- Code Size
- Clone
- Controversial
- Coupling
- Design
- Finalizers
- Import Statements
- J2EE
- Javabeans
- JUnit Tests
- Logging (Java)
- Logging (Jakarta)
- Migrating
- Naming
- Optimizations
- Strict Exceptions
- Strings
- Sun Security
- Unused Code
- Java Server Pages
- Java Server Faces

##### Project Documentation

- About PMD
- Project Info
- Project Reports
  - JavaDocs
  - JavaDoc Report
  - Source Xref
  - Test Xref
  - Unit Tests
  - Clover
  - File Activity
  - Developer Activity
  - FAQs
  - PMD Report
- Development Process

## Summary

[ summary] [ package list] [ test cases]

Tests | Errors | Failures | Success rate | Time(s)
--- | --- | --- | --- | ---
790 | 0 | 0 | 100.00% | 431.83

Note: failuresare anticipated and checked for with assertions while errorsare unanticipated.

## Package List

[ summary] [ package list] [ test cases]

Package | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
test.net.sourceforge.pmd.rules | 102 | 0 | 0 | 100.00% | 163.26
test.net.sourceforge.pmd.jaxen | 16 | 0 | 0 | 100.00% | 4.52
test.net.sourceforge.pmd | 102 | 0 | 0 | 100.00% | 10.98
test.net.sourceforge.pmd.rules.junit | 10 | 0 | 0 | 100.00% | 16.16
test.net.sourceforge.pmd.rules.design | 27 | 0 | 0 | 100.00% | 45.10
test.net.sourceforge.pmd.rules.strings | 17 | 0 | 0 | 100.00% | 22.67
test.net.sourceforge.pmd.cpd | 24 | 0 | 0 | 100.00% | 5.29
test.net.sourceforge.pmd.jsp.ast | 16 | 0 | 0 | 100.00% | 2.37
test.net.sourceforge.pmd.renderers | 50 | 0 | 0 | 100.00% | 11.25
test.net.sourceforge.pmd.ast | 112 | 0 | 0 | 100.00% | 24.17
test.net.sourceforge.pmd.rules.typeresolution.rules | 2 | 0 | 0 | 100.00% | 2.90
test.net.sourceforge.pmd.rules.braces | 4 | 0 | 0 | 100.00% | 6.64
test.net.sourceforge.pmd.rules.strictexception | 7 | 0 | 0 | 100.00% | 10.90
test.net.sourceforge.pmd.rules.logging.jakartacommons | 2 | 0 | 0 | 100.00% | 3.51
test.net.sourceforge.pmd.properties | 35 | 0 | 0 | 100.00% | 4.60
test.net.sourceforge.pmd.dfa | 46 | 0 | 0 | 100.00% | 7.58
test.net.sourceforge.pmd.rules.finalize | 4 | 0 | 0 | 100.00% | 6.52
test.net.sourceforge.pmd.jsp.rules | 9 | 0 | 0 | 100.00% | 10.35
test.net.sourceforge.pmd.rules.clone | 3 | 0 | 0 | 100.00% | 4.94
test.net.sourceforge.pmd.rules.optimization | 9 | 0 | 0 | 100.00% | 14.81
test.net.sourceforge.pmd.symboltable | 68 | 0 | 0 | 100.00% | 13.14
test.net.sourceforge.pmd.stat | 88 | 0 | 0 | 100.00% | 2.88
test.net.sourceforge.pmd.rules.imports | 4 | 0 | 0 | 100.00% | 5.54
test.net.sourceforge.pmd.rules.logging.java | 4 | 0 | 0 | 100.00% | 6.88
test.net.sourceforge.pmd.typeresolution | 2 | 0 | 0 | 100.00% | 0.55
test.net.sourceforge.pmd.rules.migrating | 6 | 0 | 0 | 100.00% | 9.62
test.net.sourceforge.pmd.rules.codesize | 3 | 0 | 0 | 100.00% | 4.95
test.net.sourceforge.pmd.rules.javabeans | 2 | 0 | 0 | 100.00% | 3.20
test.net.sourceforge.pmd.util | 6 | 0 | 0 | 100.00% | 0.95
test.net.sourceforge.pmd.rules.j2ee | 1 | 0 | 0 | 100.00% | 1.63
test.net.sourceforge.pmd.rules.sunsecure | 2 | 0 | 0 | 100.00% | 2.98
test.net.sourceforge.pmd.ant | 7 | 0 | 0 | 100.00% | 0.99

Note: package statistics are not computed recursively, they only sum up all of its testsuites numbers.

### test.net.sourceforge.pmd.rules

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| AvoidDollarSignsRuleTest | 1 | 0 | 0 | 100.00% | 1.458
| MissingStaticMethodInNonInstantiatableClassTest | 1 | 0 | 0 | 100.00% | 1.985
| AvoidFieldNameMatchingTypeNameTest | 1 | 0 | 0 | 100.00% | 1.595
| BadComparisonTest | 1 | 0 | 0 | 100.00% | 1.762
| XPathRuleTest | 2 | 0 | 0 | 100.00% | 1.321
| MisplacedNullCheckTest | 1 | 0 | 0 | 100.00% | 1.816
| DontImportSunTest | 1 | 0 | 0 | 100.00% | 1.384
| ShortVariableRuleTest | 1 | 0 | 0 | 100.00% | 1.753
| CloseResourceTest | 1 | 0 | 0 | 100.00% | 1.976
| UseNotifyAllInsteadOfNotifyTest | 1 | 0 | 0 | 100.00% | 1.858
| AvoidFieldNameMatchingMethodNameTest | 1 | 0 | 0 | 100.00% | 1.492
| UnnecessaryTemporariesTest | 1 | 0 | 0 | 100.00% | 1.601
| UseArrayListInsteadOfVectorTest | 1 | 0 | 0 | 100.00% | 1.636
| UncommentedEmptyConstructorRuleTest | 2 | 0 | 0 | 100.00% | 2.000
| InstantiationToGetClassRuleTest | 1 | 0 | 0 | 100.00% | 2.113
| EmptySwitchStmtRuleTest | 1 | 0 | 0 | 100.00% | 1.708
| AbstractNamingTest | 1 | 0 | 0 | 100.00% | 1.565
| AvoidThreadGroupTest | 1 | 0 | 0 | 100.00% | 1.805
| FinalizeShouldBeProtectedRuleTest | 1 | 0 | 0 | 100.00% | 1.554
| DefaultLabelNotLastInSwitchStmtRuleTest | 1 | 0 | 0 | 100.00% | 1.823
| UnnecessaryReturnTest | 1 | 0 | 0 | 100.00% | 1.623
| DefaultPackageTest | 1 | 0 | 0 | 100.00% | 1.648
| AtLeastOneConstructorRuleTest | 1 | 0 | 0 | 100.00% | 1.590
| SimplifyBooleanReturnsTest | 1 | 0 | 0 | 100.00% | 1.647
| SimplifyConditionalTest | 1 | 0 | 0 | 100.00% | 1.911
| ExcessivePublicCountTest | 1 | 0 | 0 | 100.00% | 1.383
| CallSuperInConstructorTest | 1 | 0 | 0 | 100.00% | 1.623
| ConstructorCallsOverridableMethodTest | 1 | 0 | 0 | 100.00% | 1.740
| CyclomaticComplexityTest | 4 | 0 | 0 | 100.00% | 1.796
| AbstractClassWithoutAbstractMethodTest | 1 | 0 | 0 | 100.00% | 1.765
| NonStaticInitializerRuleTest | 1 | 0 | 0 | 100.00% | 1.667
| EmptyTryBlockRuleTest | 1 | 0 | 0 | 100.00% | 1.864
| FinalFieldCouldBeStaticRuleTest | 1 | 0 | 0 | 100.00% | 1.769
| EmptySynchronizedBlockRuleTest | 1 | 0 | 0 | 100.00% | 1.729
| UnnecessaryConstructorTest | 1 | 0 | 0 | 100.00% | 1.738
| ShortMethodNameTest | 1 | 0 | 0 | 100.00% | 1.603
| OptimizableToArrayCallTest | 1 | 0 | 0 | 100.00% | 1.787
| UnusedLocalVariableTest | 1 | 0 | 0 | 100.00% | 1.654
| MethodWithSameNameAsEnclosingClassRuleTest | 1 | 0 | 0 | 100.00% | 1.437
| UncommentedEmptyMethodRuleTest | 1 | 0 | 0 | 100.00% | 1.738
| UselessOperationOnImmutableTest | 1 | 0 | 0 | 100.00% | 1.621
| NonCaseLabelInSwitchStatementRuleTest | 1 | 0 | 0 | 100.00% | 1.785
| MissingBreakInSwitchTest | 1 | 0 | 0 | 100.00% | 1.880
| JumbledIncrementerRuleTest | 1 | 0 | 0 | 100.00% | 1.845
| AvoidDeeplyNestedIfStmtsRuleTest | 1 | 0 | 0 | 100.00% | 1.644
| VariableNamingConventionsTest | 1 | 0 | 0 | 100.00% | 1.528
| OverrideBothEqualsAndHashcodeTest | 1 | 0 | 0 | 100.00% | 1.771
| UnusedNullCheckInEqualsTest | 1 | 0 | 0 | 100.00% | 1.802
| UselessAssignmentRuleTest | 1 | 0 | 0 | 100.00% | 0.391
| ExcessiveImportsTest | 1 | 0 | 0 | 100.00% | 1.281
| ReturnFromFinallyBlockTest | 1 | 0 | 0 | 100.00% | 1.738
| EqualsNullRuleTest | 1 | 0 | 0 | 100.00% | 1.887
| ForLoopShouldBeWhileLoopRuleTest | 1 | 0 | 0 | 100.00% | 2.106
| EmptyWhileStmtRuleTest | 1 | 0 | 0 | 100.00% | 1.826
| EmptyIfStmtRuleTest | 1 | 0 | 0 | 100.00% | 1.728
| SwitchStmtsShouldHaveDefaultRuleTest | 1 | 0 | 0 | 100.00% | 1.776
| UnconditionalIfStatementRuleTest | 1 | 0 | 0 | 100.00% | 1.748
| UnusedFormalParameterRuleTest | 1 | 0 | 0 | 100.00% | 1.528
| UnusedPrivateMethodRuleTest | 1 | 0 | 0 | 100.00% | 1.659
| SuspiciousOctalEscapeTest | 1 | 0 | 0 | 100.00% | 1.478
| MethodNamingConventionsTest | 1 | 0 | 0 | 100.00% | 1.453
| EmptyStaticInitializerRuleTest | 1 | 0 | 0 | 100.00% | 1.701
| IdempotentOperationsTest | 1 | 0 | 0 | 100.00% | 1.648
| BooleanInstantiationRuleTest | 1 | 0 | 0 | 100.00% | 1.633
| AccessorClassGenerationTest | 1 | 0 | 0 | 100.00% | 1.678
| SuspiciousConstantFieldNameTest | 1 | 0 | 0 | 100.00% | 1.600
| AvoidNonConstructorMethodsWithClassNameTest | 1 | 0 | 0 | 100.00% | 1.494
| EmptyFinallyBlockRuleTest | 1 | 0 | 0 | 100.00% | 1.738
| EmptyFinalizerRuleTest | 1 | 0 | 0 | 100.00% | 1.648
| ClassCastExceptionWithToArrayTest | 1 | 0 | 0 | 100.00% | 1.796
| AvoidReassigningParametersTest | 1 | 0 | 0 | 100.00% | 1.784
| UnnecessaryFinalModifierTest | 1 | 0 | 0 | 100.00% | 1.708
| DoubleCheckedLockingTest | 1 | 0 | 0 | 100.00% | 1.608
| ClassNamingConventionsTest | 1 | 0 | 0 | 100.00% | 1.382
| CouplingBetweenObjectsTest | 1 | 0 | 0 | 100.00% | 1.400
| BigIntegerInstantiationTest | 1 | 0 | 0 | 100.00% | 1.628
| AvoidDecimalLiteralsInBigDecimalConstructorTest | 1 | 0 | 0 | 100.00% | 1.731
| UnusedModifierRuleTest | 1 | 0 | 0 | 100.00% | 1.569
| LongVariableRuleTest | 1 | 0 | 0 | 100.00% | 1.769
| SingularFieldRuleTest | 1 | 0 | 0 | 100.00% | 1.882
| UselessOverridingMethodTest | 1 | 0 | 0 | 100.00% | 1.941
| PackageCaseTest | 1 | 0 | 0 | 100.00% | 1.636
| NoPackageTest | 1 | 0 | 0 | 100.00% | 1.543
| AvoidSynchronizedAtMethodLevelTest | 1 | 0 | 0 | 100.00% | 1.747
| MisleadingVariableNameTest | 1 | 0 | 0 | 100.00% | 1.684
| DataflowAnomalyAnalysisTest | 1 | 0 | 0 | 100.00% | 1.651
| AssignmentInOperandTest | 1 | 0 | 0 | 100.00% | 1.546
| SimplifyBooleanExpressionsRuleTest | 1 | 0 | 0 | 100.00% | 1.797
| UnnecessaryParenthesesTest | 1 | 0 | 0 | 100.00% | 1.657
| SuspiciousEqualsMethodNameRuleTest | 1 | 0 | 0 | 100.00% | 1.684
| AvoidUsingOctalValuesTest | 1 | 0 | 0 | 100.00% | 1.668
| SuspiciousHashcodeMethodNameRuleTest | 1 | 0 | 0 | 100.00% | 1.602
| EmptyCatchBlockRuleTest | 1 | 0 | 0 | 100.00% | 2.194
| UnusedPrivateFieldRuleTest | 1 | 0 | 0 | 100.00% | 1.671
| SimpleDateFormatNeedsLocaleRuleTest | 1 | 0 | 0 | 100.00% | 1.764
| BrokenNullCheckTest | 1 | 0 | 0 | 100.00% | 1.829
| UseLocaleWithCaseConversionsRuleTest | 1 | 0 | 0 | 100.00% | 1.854

### test.net.sourceforge.pmd.jaxen

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| DocumentNavigatorTest | 11 | 0 | 0 | 100.00% | 1.638
| RegexpAcceptanceTest | 1 | 0 | 0 | 100.00% | 1.401
| AttributeAxisIteratorTest | 1 | 0 | 0 | 100.00% | 0.499
| AttributeTest | 1 | 0 | 0 | 100.00% | 0.499
| MatchesFunctionTest | 2 | 0 | 0 | 100.00% | 0.480

### test.net.sourceforge.pmd

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| SourceTypeDiscovererTest | 3 | 0 | 0 | 100.00% | 0.470
| AbstractRuleTest | 13 | 0 | 0 | 100.00% | 0.661
| ReadableDurationTest | 5 | 0 | 0 | 100.00% | 0.476
| RuleSetFactoryTest | 16 | 0 | 0 | 100.00% | 1.624
| RuleContextTest | 2 | 0 | 0 | 100.00% | 0.489
| RuleViolationTest | 1 | 0 | 0 | 100.00% | 0.407
| SimpleRuleSetNameMapperTest | 7 | 0 | 0 | 100.00% | 0.481
| RuleSetTest | 14 | 0 | 0 | 100.00% | 1.029
| ExcludeLinesTest | 2 | 0 | 0 | 100.00% | 1.331
| SuppressWarningsTest | 10 | 0 | 0 | 100.00% | 1.283
| ReportTest | 9 | 0 | 0 | 100.00% | 1.225
| FileSelectorTest | 4 | 0 | 0 | 100.00% | 0.473
| CommandLineOptionsTest | 15 | 0 | 0 | 100.00% | 0.551
| ExternalRuleIDTest | 1 | 0 | 0 | 100.00% | 0.475

### test.net.sourceforge.pmd.rules.junit

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| JUnitSpellingRuleTest | 1 | 0 | 0 | 100.00% | 1.613
| JUnitStaticSuiteRuleTest | 1 | 0 | 0 | 100.00% | 1.591
| UnnecessaryBooleanAssertionTest | 1 | 0 | 0 | 100.00% | 1.759
| JUnitAssertionsShouldIncludeMessageTest | 1 | 0 | 0 | 100.00% | 1.550
| SimplifyBooleanAssertionTest | 1 | 0 | 0 | 100.00% | 1.671
| UseAssertEqualsInsteadOfAssertTrueTest | 1 | 0 | 0 | 100.00% | 1.650
| UseAssertSameInsteadOfAssertTrueTest | 1 | 0 | 0 | 100.00% | 1.705
| TestClassWithoutTestCasesTest | 1 | 0 | 0 | 100.00% | 1.388
| JUnitTestsShouldContainAssertsTest | 1 | 0 | 0 | 100.00% | 1.593
| UseAssertNullInsteadOfAssertTrueTest | 1 | 0 | 0 | 100.00% | 1.643

### test.net.sourceforge.pmd.rules.design

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| UnnecessaryLocalBeforeReturnRuleTest | 1 | 0 | 0 | 100.00% | 1.930
| PositionLiteralsFirstInComparisonsTest | 1 | 0 | 0 | 100.00% | 1.828
| PreserveStackTraceTest | 1 | 0 | 0 | 100.00% | 2.208
| AvoidConstantsInterfaceTest | 1 | 0 | 0 | 100.00% | 1.892
| EmptyStatementNotInLoopRuleTest | 1 | 0 | 0 | 100.00% | 1.763
| ConfusingTernaryRuleTest | 1 | 0 | 0 | 100.00% | 1.676
| LooseCouplingTest | 1 | 0 | 0 | 100.00% | 1.512
| PositionalIteratorRuleTest | 1 | 0 | 0 | 100.00% | 1.560
| NullAssignmentRuleTest | 1 | 0 | 0 | 100.00% | 1.573
| AssignmentToNonFinalStaticTest | 1 | 0 | 0 | 100.00% | 1.741
| UseCollectionIsEmptyTest | 1 | 0 | 0 | 100.00% | 1.828
| SwitchDensityTest | 1 | 0 | 0 | 100.00% | 1.722
| AvoidInstanceofChecksInCatchClauseTest | 1 | 0 | 0 | 100.00% | 1.844
| UseSingletonTest | 2 | 0 | 0 | 100.00% | 1.774
| NpathComplexityTest | 1 | 0 | 0 | 100.00% | 1.564
| NonThreadSafeSingletonTest | 1 | 0 | 0 | 100.00% | 1.829
| LongClassRuleTest | 1 | 0 | 0 | 100.00% | 1.502
| ImmutableFieldTest | 1 | 0 | 0 | 100.00% | 1.885
| TooManyFieldsTest | 1 | 0 | 0 | 100.00% | 1.627
| OnlyOneReturnRuleTest | 1 | 0 | 0 | 100.00% | 1.575
| CollapsibleIfStatementsTest | 1 | 0 | 0 | 100.00% | 1.848
| LongParameterListRuleTest | 1 | 0 | 0 | 100.00% | 1.444
| CompareObjectsWithEqualsTest | 1 | 0 | 0 | 100.00% | 1.789
| UnsynchronizedStaticDateFormatterTest | 1 | 0 | 0 | 100.00% | 1.675
| AvoidProtectedFieldInFinalClassRuleTest | 1 | 0 | 0 | 100.00% | 1.965
| ExcessiveMethodLengthTest | 1 | 0 | 0 | 100.00% | 1.550

### test.net.sourceforge.pmd.rules.strings

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| InefficientStringBufferingTest | 1 | 0 | 0 | 100.00% | 1.772
| StringInstantiationRuleTest | 1 | 0 | 0 | 100.00% | 1.628
| UseIndexOfCharTest | 1 | 0 | 0 | 100.00% | 1.602
| UseStringBufferLengthTest | 1 | 0 | 0 | 100.00% | 1.616
| InefficientEmptyStringCheckTest | 1 | 0 | 0 | 100.00% | 1.647
| ConsecutiveLiteralAppendsTest | 1 | 0 | 0 | 100.00% | 2.454
| UselessStringValueOfTest | 1 | 0 | 0 | 100.00% | 1.592
| StringToStringRuleTest | 1 | 0 | 0 | 100.00% | 1.731
| AvoidDuplicateLiteralsRuleTest | 5 | 0 | 0 | 100.00% | 1.574
| AppendCharacterWithCharTest | 1 | 0 | 0 | 100.00% | 1.641
| StringBufferInstantiationWithCharTest | 1 | 0 | 0 | 100.00% | 1.654
| InsufficientStringBufferDeclarationTest | 1 | 0 | 0 | 100.00% | 2.201
| UnnecessaryCaseChangeRuleTest | 1 | 0 | 0 | 100.00% | 1.557

### test.net.sourceforge.pmd.cpd

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| TokenEntryTest | 1 | 0 | 0 | 100.00% | 0.470
| AnyTokenizerTest | 1 | 0 | 0 | 100.00% | 0.477
| LanguageFactoryTest | 1 | 0 | 0 | 100.00% | 0.487
| FileReporterTest | 4 | 0 | 0 | 100.00% | 0.469
| XMLRendererTest | 3 | 0 | 0 | 100.00% | 0.600
| MatchTest | 2 | 0 | 0 | 100.00% | 0.481
| MatchAlgorithmTest | 2 | 0 | 0 | 100.00% | 0.613
| CPPTokenizerTest | 4 | 0 | 0 | 100.00% | 0.533
| SourceCodeTest | 1 | 0 | 0 | 100.00% | 0.578
| JavaTokensTokenizerTest | 5 | 0 | 0 | 100.00% | 0.582

### test.net.sourceforge.pmd.jsp.ast

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| JspDocStyleTest | 6 | 0 | 0 | 100.00% | 0.696
| JspPageStyleTest | 9 | 0 | 0 | 100.00% | 0.714
| XPathJspRuleTest | 1 | 0 | 0 | 100.00% | 0.957

### test.net.sourceforge.pmd.renderers

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| CSVRendererTest | 5 | 0 | 0 | 100.00% | 1.116
| EmacsRendererTest | 5 | 0 | 0 | 100.00% | 1.104
| IDEAJRendererTest | 5 | 0 | 0 | 100.00% | 1.110
| TextRendererTest | 5 | 0 | 0 | 100.00% | 1.106
| HTMLRendererTest | 5 | 0 | 0 | 100.00% | 1.111
| VBHTMLRendererTest | 5 | 0 | 0 | 100.00% | 1.114
| SummaryHTMLRendererTest | 5 | 0 | 0 | 100.00% | 1.120
| XMLRendererTest | 5 | 0 | 0 | 100.00% | 1.261
| YAHTMLRendererTest | 5 | 0 | 0 | 100.00% | 1.111
| TextPadRendererTest | 5 | 0 | 0 | 100.00% | 1.099

### test.net.sourceforge.pmd.ast

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| MethodDeclTest | 8 | 0 | 0 | 100.00% | 1.134
| ASTAnnotationTest | 2 | 0 | 0 | 100.00% | 1.122
| AccessNodeTest | 13 | 0 | 0 | 100.00% | 1.107
| ASTLocalVariableDeclarationTest | 3 | 0 | 0 | 100.00% | 0.978
| ASTVariableDeclaratorIdTest | 2 | 0 | 0 | 100.00% | 1.135
| ASTLiteralTest | 2 | 0 | 0 | 100.00% | 1.162
| ASTAssignmentOperatorTest | 3 | 0 | 0 | 100.00% | 1.187
| JDKVersionTest | 24 | 0 | 0 | 100.00% | 1.212
| ClassDeclTest | 5 | 0 | 0 | 100.00% | 1.102
| SimpleNodeTest | 19 | 0 | 0 | 100.00% | 1.482
| ASTFieldDeclarationTest | 5 | 0 | 0 | 100.00% | 1.004
| ParserCornersTest | 1 | 0 | 0 | 100.00% | 0.937
| EncodingTest | 1 | 0 | 0 | 100.00% | 0.398
| ASTThrowStatementTest | 2 | 0 | 0 | 100.00% | 1.182
| FieldDeclTest | 7 | 0 | 0 | 100.00% | 1.134
| ASTBooleanLiteralTest | 2 | 0 | 0 | 100.00% | 1.173
| ASTFormalParameterTest | 1 | 0 | 0 | 100.00% | 1.102
| ASTMethodDeclarationTest | 1 | 0 | 0 | 100.00% | 0.487
| ASTPrimarySuffixTest | 2 | 0 | 0 | 100.00% | 1.168
| ASTInitializerTest | 1 | 0 | 0 | 100.00% | 1.169
| ASTSwitchLabelTest | 2 | 0 | 0 | 100.00% | 1.204
| ASTImportDeclarationTest | 4 | 0 | 0 | 100.00% | 1.108
| ASTBlockStatementTest | 2 | 0 | 0 | 100.00% | 0.483

### test.net.sourceforge.pmd.rules.typeresolution.rules

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| CloneMethodMustImplementCloneableTest | 1 | 0 | 0 | 100.00% | 1.434
| LooseCouplingTest | 1 | 0 | 0 | 100.00% | 1.469

### test.net.sourceforge.pmd.rules.braces

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| WhileLoopsMustUseBracesTest | 1 | 0 | 0 | 100.00% | 1.606
| ForLoopsMustUseBracesTest | 1 | 0 | 0 | 100.00% | 1.677
| IfStmtsMustUseBracesRuleTest | 1 | 0 | 0 | 100.00% | 1.614
| IfElseStmtsMustUseBracesTest | 1 | 0 | 0 | 100.00% | 1.744

### test.net.sourceforge.pmd.rules.strictexception

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| ExceptionAsFlowControlTest | 1 | 0 | 0 | 100.00% | 1.513
| AvoidCatchingNPETest | 1 | 0 | 0 | 100.00% | 1.630
| AvoidThrowingRawExceptionTypesTest | 1 | 0 | 0 | 100.00% | 1.617
| AvoidThrowingNullPointerExceptionTest | 1 | 0 | 0 | 100.00% | 1.606
| AvoidCatchingThrowableRuleTest | 1 | 0 | 0 | 100.00% | 1.412
| AvoidRethrowingExceptionTest | 1 | 0 | 0 | 100.00% | 1.704
| ExceptionSignatureDeclarationRuleTest | 1 | 0 | 0 | 100.00% | 1.414

### test.net.sourceforge.pmd.rules.logging.jakartacommons

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| ProperLoggerTest | 1 | 0 | 0 | 100.00% | 1.765
| UseCorrectExceptionLoggingTest | 1 | 0 | 0 | 100.00% | 1.746

### test.net.sourceforge.pmd.properties

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| CharacterPropertyTest | 4 | 0 | 0 | 100.00% | 0.503
| PropertyAccessorTest | 3 | 0 | 0 | 100.00% | 0.593
| EnumeratedPropertyTest | 4 | 0 | 0 | 100.00% | 0.499
| StringPropertyTest | 4 | 0 | 0 | 100.00% | 0.500
| BooleanPropertyTest | 4 | 0 | 0 | 100.00% | 0.495
| FloatPropertyTest | 4 | 0 | 0 | 100.00% | 0.500
| IntegerPropertyTest | 4 | 0 | 0 | 100.00% | 0.502
| TypePropertyTest | 4 | 0 | 0 | 100.00% | 0.503
| DoublePropertyTest | 4 | 0 | 0 | 100.00% | 0.501

### test.net.sourceforge.pmd.dfa

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| DAAPathFinderTest | 1 | 0 | 0 | 100.00% | 1.397
| VariableAccessTest | 1 | 0 | 0 | 100.00% | 0.479
| AcceptanceTest | 31 | 0 | 0 | 100.00% | 1.979
| DataFlowNodeTest | 5 | 0 | 0 | 100.00% | 0.481
| GeneralFiddlingTest | 1 | 0 | 0 | 100.00% | 1.356
| StatementAndBraceFinderTest | 6 | 0 | 0 | 100.00% | 1.389
| StructureTest | 1 | 0 | 0 | 100.00% | 0.502

### test.net.sourceforge.pmd.rules.finalize

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| FinalizeOnlyCallsSuperFinalizeRuleTest | 1 | 0 | 0 | 100.00% | 1.673
| FinalizeDoesNotCallSuperFinalizeRuleTest | 1 | 0 | 0 | 100.00% | 1.710
| AvoidCallingFinalizeTest | 1 | 0 | 0 | 100.00% | 1.518
| FinalizeOverloadedRuleTest | 1 | 0 | 0 | 100.00% | 1.616

### test.net.sourceforge.pmd.jsp.rules

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| DontNestJsfInJstlIterationTest | 1 | 0 | 0 | 100.00% | 1.122
| DuplicateJspImportTest | 1 | 0 | 0 | 100.00% | 0.997
| IframeMissingSrcAttributeTest | 1 | 0 | 0 | 100.00% | 1.212
| NoClassAttributeTest | 1 | 0 | 0 | 100.00% | 1.188
| NoLongScriptsTest | 1 | 0 | 0 | 100.00% | 1.273
| NoScriptletsTest | 1 | 0 | 0 | 100.00% | 1.204
| NoInlineStyleInformationTest | 1 | 0 | 0 | 100.00% | 0.992
| NoJspForwardTest | 1 | 0 | 0 | 100.00% | 1.192
| NoHtmlCommentsTest | 1 | 0 | 0 | 100.00% | 1.170

### test.net.sourceforge.pmd.rules.clone

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| CloneMethodMustImplementCloneableTest | 1 | 0 | 0 | 100.00% | 1.685
| CloneThrowsCloneNotSupportedExceptionTest | 1 | 0 | 0 | 100.00% | 1.565
| ProperCloneImplementationTest | 1 | 0 | 0 | 100.00% | 1.694

### test.net.sourceforge.pmd.rules.optimization

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| LocalVariableCouldBeFinalTest | 1 | 0 | 0 | 100.00% | 1.526
| UnnecessaryWrapperObjectCreationTest | 1 | 0 | 0 | 100.00% | 1.488
| AvoidInstantiatingObjectsInLoopsTest | 1 | 0 | 0 | 100.00% | 1.529
| MethodArgumentCouldBeFinalTest | 1 | 0 | 0 | 100.00% | 1.576
| UseArraysAsListTest | 1 | 0 | 0 | 100.00% | 1.913
| AvoidArrayLoopsTest | 1 | 0 | 0 | 100.00% | 1.894
| BooleanInversionTest | 1 | 0 | 0 | 100.00% | 1.670
| UseStringBufferForStringAppendsTest | 1 | 0 | 0 | 100.00% | 1.526
| SimplifyStartsWithTest | 1 | 0 | 0 | 100.00% | 1.687

### test.net.sourceforge.pmd.symboltable

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| NameOccurrencesTest | 5 | 0 | 0 | 100.00% | 1.172
| MethodNameDeclarationTest | 1 | 0 | 0 | 100.00% | 1.146
| LocalScopeTest | 8 | 0 | 0 | 100.00% | 1.220
| TypeSetTest | 17 | 0 | 0 | 100.00% | 0.507
| ClassScopeTest | 16 | 0 | 0 | 100.00% | 1.326
| ImageFinderFunctionTest | 2 | 0 | 0 | 100.00% | 0.507
| AcceptanceTest | 1 | 0 | 0 | 100.00% | 1.113
| MethodScopeTest | 2 | 0 | 0 | 100.00% | 1.132
| VariableUsageFinderFunctionTest | 1 | 0 | 0 | 100.00% | 0.499
| SourceFileScopeTest | 4 | 0 | 0 | 100.00% | 1.100
| ScopeCreationVisitorTest | 1 | 0 | 0 | 100.00% | 1.131
| GlobalScopeTest | 2 | 0 | 0 | 100.00% | 1.093
| VariableNameDeclarationTest | 8 | 0 | 0 | 100.00% | 1.199

### test.net.sourceforge.pmd.stat

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| StatisticalRuleTest | 81 | 0 | 0 | 100.00% | 2.408
| MetricTest | 7 | 0 | 0 | 100.00% | 0.477

### test.net.sourceforge.pmd.rules.imports

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| ImportFromSamePackageRuleTest | 1 | 0 | 0 | 100.00% | 1.331
| DontImportJavaLangRuleTest | 1 | 0 | 0 | 100.00% | 1.329
| UnusedImportsRuleTest | 1 | 0 | 0 | 100.00% | 1.601
| DuplicateImportsRuleTest | 1 | 0 | 0 | 100.00% | 1.278

### test.net.sourceforge.pmd.rules.logging.java

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| AvoidPrintStackTraceTest | 1 | 0 | 0 | 100.00% | 1.972
| SystemPrintlnTest | 1 | 0 | 0 | 100.00% | 1.758
| LoggerIsNotStaticFinalTest | 1 | 0 | 0 | 100.00% | 1.720
| MoreThanOneLoggerTest | 1 | 0 | 0 | 100.00% | 1.431

### test.net.sourceforge.pmd.typeresolution

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| PMDASMClassLoaderTest | 2 | 0 | 0 | 100.00% | 0.549

### test.net.sourceforge.pmd.rules.migrating

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| AvoidEnumAsIdentifierTest | 1 | 0 | 0 | 100.00% | 1.587
| AvoidAssertAsIdentifierTest | 1 | 0 | 0 | 100.00% | 1.592
| ReplaceHashtableWithMapTest | 1 | 0 | 0 | 100.00% | 1.606
| ReplaceVectorWithListTest | 1 | 0 | 0 | 100.00% | 1.603
| ReplaceEnumerationWithIteratorTest | 1 | 0 | 0 | 100.00% | 1.607
| IntegerInstantiationTest | 1 | 0 | 0 | 100.00% | 1.622

### test.net.sourceforge.pmd.rules.codesize

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| NcssTypeCountTest | 1 | 0 | 0 | 100.00% | 1.665
| NcssConstructorCountTest | 1 | 0 | 0 | 100.00% | 1.632
| NcssMethodCountTest | 1 | 0 | 0 | 100.00% | 1.650

### test.net.sourceforge.pmd.rules.javabeans

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| BeanMembersShouldSerializeRuleTest | 1 | 0 | 0 | 100.00% | 1.574
| MissingSerialVersionUIDTest | 1 | 0 | 0 | 100.00% | 1.621

### test.net.sourceforge.pmd.util

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| StringUtilTest | 5 | 0 | 0 | 100.00% | 0.482
| ApplierTest | 1 | 0 | 0 | 100.00% | 0.472

### test.net.sourceforge.pmd.rules.j2ee

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| UseProperClassLoaderTest | 1 | 0 | 0 | 100.00% | 1.631

### test.net.sourceforge.pmd.rules.sunsecure

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| MethodReturnsInternalArrayTest | 1 | 0 | 0 | 100.00% | 1.492
| ArrayIsStoredDirectlyTest | 1 | 0 | 0 | 100.00% | 1.487

### test.net.sourceforge.pmd.ant

Class | Tests | Errors | Failures | Success Rate | Time
--- | --- | --- | --- | --- | ---
| PMDTaskTest | 5 | 0 | 0 | 100.00% | 0.504
| FormatterTest | 2 | 0 | 0 | 100.00% | 0.487

## Test Cases

[ summary] [ package list] [ test cases]

### AvoidDollarSignsRuleTest

| testAll | 1.07

### DocumentNavigatorTest

| testChildAxisIterator | 0.85
| testParentAxisIterator | 0.02
| testParentAxisIterator2 | 0.02
| testDescendantAxisIterator | 0.02
| testDescendantAxisIterator2 | 0.02
| testFollowingSiblingAxisIterator | 0.07
| testFollowingSiblingAxisIterator2 | 0.02
| testPrecedingSiblingAxisIterator | 0.02
| testPrecedingSiblingAxisIterator2 | 0.02
| testXPath | 0.18
| testXPath2 | 0.02

### SourceTypeDiscovererTest

| testJspFile | 0.07
| testJavaFileUsingDefaults | 0.00
| testJavaFileUsing15 | 0.00

### AbstractRuleTest

| testCreateRV | 0.25
| testCreateRV2 | 0.00
| testRuleExclusion | 0.00
| testEquals1 | 0.00
| testEquals2 | 0.00
| testEquals3 | 0.00
| testEquals4 | 0.00
| testEquals5 | 0.00
| testEquals6 | 0.00
| testEquals7 | 0.00
| testEquals8 | 0.00
| testEquals9 | 0.00
| testEquals10 | 0.00

### JUnitSpellingRuleTest

| testAll | 1.23

### RegexpAcceptanceTest

| testSimple | 1.01

### UnnecessaryLocalBeforeReturnRuleTest

| testAll | 1.48

### InefficientStringBufferingTest

| testAll | 1.39

### MissingStaticMethodInNonInstantiatableClassTest

| testAll | 1.60

### PositionLiteralsFirstInComparisonsTest

| testAll | 1.44

### TokenEntryTest

| testSimple | 0.07

### AvoidFieldNameMatchingTypeNameTest

| testAll | 1.16

### JspDocStyleTest

| testSimplestJsp | 0.26
| testElementAttributeAndNamespace | 0.01
| testAttributeValueContainingHash | 0.01
| testCData | 0.00
| testDoctype | 0.01
| testComment | 0.01

### CSVRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.72
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### AnyTokenizerTest

| testMultiLineMacros | 0.09

### BadComparisonTest

| testAll | 1.38

### LanguageFactoryTest

| testSimple | 0.09

### MethodDeclTest

| testPublic | 0.71
| testPrivate | 0.01
| testProtected | 0.00
| testFinal | 0.00
| testSynchronized | 0.00
| testAbstract | 0.00
| testNative | 0.00
| testStrict | 0.00

### ASTAnnotationTest

| testAnnotationFailsWithJDK14 | 0.72
| testAnnotationSucceedsWithJDK15 | 0.01

### CloneMethodMustImplementCloneableTest

| testAll | 1.05

### WhileLoopsMustUseBracesTest

| testAll | 1.22

### ExceptionAsFlowControlTest

| testAll | 1.13

### ProperLoggerTest

| testAll | 1.38

### XPathRuleTest

| testPluginname | 0.92
| testVariables | 0.01

### MisplacedNullCheckTest

| testAll | 1.43

### DontImportSunTest

| testAll | 1.00

### CharacterPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### DAAPathFinderTest

| testTwoUpdateDefs | 1.00

### VariableAccessTest

| testGetVariableName | 0.08

### StringInstantiationRuleTest

| testAll | 1.24

### ReadableDurationTest

| testMillisSeconds | 0.07
| testSeconds | 0.00
| testWholeMinutes | 0.00
| testMinutesAndSeconds | 0.00
| testHours | 0.00

### FinalizeOnlyCallsSuperFinalizeRuleTest

| testAll | 1.29

### PreserveStackTraceTest

| test | 1.80

### DontNestJsfInJstlIterationTest

| testViolation | 0.73

### ShortVariableRuleTest

| testAll | 1.37

### CloseResourceTest

| testAll | 1.59

### EmacsRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.70
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### AvoidConstantsInterfaceTest

| testAll | 1.50

### AttributeAxisIteratorTest

| testRemove | 0.10

### UseNotifyAllInsteadOfNotifyTest

| testAll | 1.47

### JUnitStaticSuiteRuleTest

| testAll | 1.21

### ForLoopsMustUseBracesTest

| testAll | 1.29

### IDEAJRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.70
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### CloneMethodMustImplementCloneableTest

| testAll | 1.28

### LocalVariableCouldBeFinalTest

| testAll | 1.14

### NameOccurrencesTest

| testSuper | 0.75
| testThis | 0.01
| testNameLinkage | 0.00
| testSimpleVariableOccurrence | 0.01
| testQualifiedOccurrence | 0.00

### AvoidFieldNameMatchingMethodNameTest

| testAll | 1.11

### UnnecessaryTemporariesTest

| testAll | 1.21

### MethodNameDeclarationTest

| testEquality | 0.75

### CloneThrowsCloneNotSupportedExceptionTest

| testAll | 1.18

### EmptyStatementNotInLoopRuleTest

| testAll | 1.38

### StatisticalRuleTest

| testMetrics | 0.34
| testExpectedMinimum | 0.01
| testSingleDatapoint | 0.01
| testS | 0.03
| testS1 | 0.03
| testS2 | 0.03
| testS3 | 0.04
| testS4 | 0.02
| testS5 | 0.02
| testT | 0.07
| testT1 | 0.04
| testT2 | 0.06
| testT3 | 0.04
| testT4 | 0.04
| testT5 | 0.03
| testM | 0.05
| testM1 | 0.02
| testM2 | 0.03
| testM3 | 0.02
| testM4 | 0.03
| testM5 | 0.02
| testST | 0.02
| testST1 | 0.01
| testST2 | 0.01
| testST3 | 0.01
| testST4 | 0.01
| testST5 | 0.01
| testTS | 0.02
| testTS1 | 0.02
| testTS2 | 0.02
| testTS3 | 0.02
| testTS4 | 0.05
| testTS5 | 0.02
| testSM | 0.01
| testSM1 | 0.01
| testSM2 | 0.01
| testSM3 | 0.02
| testSM4 | 0.05
| testSM5 | 0.03
| testMS | 0.02
| testMS1 | 0.02
| testMS2 | 0.02
| testMS3 | 0.02
| testMS4 | 0.02
| testMS5 | 0.02
| testTM | 0.03
| testTM1 | 0.03
| testTM2 | 0.03
| testTM3 | 0.04
| testTM4 | 0.03
| testTM5 | 0.03
| testMT | 0.01
| testMT1 | 0.04
| testMT2 | 0.01
| testMT3 | 0.01
| testMT4 | 0.01
| testMT5 | 0.01
| testSTM | 0.01
| testSTM1 | 0.01
| testSTM2 | 0.02
| testSTM3 | 0.01
| testSTM4 | 0.01
| testSTM5 | 0.01
| testSMT | 0.01
| testSMT1 | 0.01
| testSMT2 | 0.01
| testSMT3 | 0.01
| testSMT4 | 0.01
| testSMT5 | 0.01
| testTSM | 0.01
| testTSM1 | 0.01
| testTSM2 | 0.01
| testTSM3 | 0.01
| testTSM4 | 0.01
| testTSM5 | 0.01
| testTMS | 0.01
| testTMS1 | 0.01
| testTMS2 | 0.01
| testTMS3 | 0.01
| testTMS4 | 0.01
| testTMS5 | 0.05

### ImportFromSamePackageRuleTest

| testAll | 0.90

### ConfusingTernaryRuleTest

| testAll | 1.28

### RuleSetFactoryTest

| testRefs | 1.13
| testRuleSetNotFound | 0.00
| testCreateEmptyRuleSet | 0.00
| testSingleRule | 0.01
| testMultipleRules | 0.01
| testSingleRuleWithPriority | 0.00
| testProps | 0.01
| testXPathPluginnameProperty | 0.00
| testXPath | 0.00
| testFacadesOffByDefault | 0.00
| testDFAFlag | 0.00
| testExternalReferenceOverride | 0.01
| testOverrideMessage | 0.01
| testOverrideMessageOneElem | 0.01
| testExternalRef | 0.01
| testSetPriority | 0.01

### AccessNodeTest

| testModifiersOnClassDecl | 0.70
| testStatic | 0.00
| testPublic | 0.00
| testProtected | 0.00
| testPrivate | 0.00
| testFinal | 0.00
| testSynchronized | 0.00
| testVolatile | 0.00
| testTransient | 0.00
| testNative | 0.00
| testAbstract | 0.00
| testStrict | 0.00
| testPackagePrivate | 0.00

### FileReporterTest

| testCreation | 0.07
| testEmptyReport | 0.00
| testReport | 0.00
| testInvalidFile | 0.00

### UseArrayListInsteadOfVectorTest

| testAll | 1.25

### AvoidPrintStackTraceTest

| testAll | 1.50

### UncommentedEmptyConstructorRuleTest

| testDefault | 1.46
| testIgnoredConstructorInvocation | 0.14

### AvoidCatchingNPETest

| testAll | 1.25

### InstantiationToGetClassRuleTest

| testAll | 1.63

### LooseCouplingTest

| testAll | 1.12

### UnnecessaryBooleanAssertionTest

| testAll | 1.38

### EmptySwitchStmtRuleTest

| testAll | 1.32

### PositionalIteratorRuleTest

| testAll | 1.16

### RuleContextTest

| testReport | 0.09
| testFilename | 0.00

### AbstractNamingTest

| testAll | 1.18

### JspPageStyleTest

| testComment | 0.26
| testDirective | 0.01
| testDeclaration | 0.00
| testScriptlet | 0.00
| testExpression | 0.00
| testExpressionInAttribute | 0.02
| testElExpression | 0.00
| testElExpressionInAttribute | 0.00
| testJsfValueBinding | 0.00

### RuleViolationTest

| testConstructor1 | 0.00

### AvoidThreadGroupTest

| testAll | 1.41

### FinalizeShouldBeProtectedRuleTest

| testAll | 1.17

### SimpleRuleSetNameMapperTest

| testMultipleSimple | 0.07
| testOneSimple | 0.00
| testMultipleRegular | 0.00
| testOneRegular | 0.00
| testMix | 0.00
| testUnknown | 0.00
| testUnknownAndSimple | 0.00

### NullAssignmentRuleTest

| testAll | 1.19

### TextRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.70
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### ASTLocalVariableDeclarationTest

| testSingleDimArray | 0.58
| testMultDimArray | 0.00
| testMultDimArraySplitBraces | 0.01

### UnnecessaryWrapperObjectCreationTest

| testAll | 1.10

### DefaultLabelNotLastInSwitchStmtRuleTest

| testAll | 1.44

### RuleSetTest

| testNoDFA | 0.19
| testIncludesRuleWithDFA | 0.00
| testAccessors | 0.00
| testGetRuleByName | 0.00
| testGetRuleByName2 | 0.00
| testRuleList | 0.00
| testAddRuleSet | 0.00
| testApply0Rules | 0.43
| testEquals1 | 0.00
| testEquals2 | 0.00
| testEquals3 | 0.00
| testEquals4 | 0.00
| testEquals5 | 0.00
| testEquals6 | 0.00

### UnnecessaryReturnTest

| testAll | 1.20

### AssignmentToNonFinalStaticTest

| testAll | 1.34

### DefaultPackageTest

| testAll | 1.26

### AtLeastOneConstructorRuleTest

| testAll | 1.20

### UseCollectionIsEmptyTest

| testAll | 1.42

### SimplifyBooleanReturnsTest

| testAll | 1.26

### PMDASMClassLoaderTest

| testLoadClassWithImportOnDemand | 0.14
| testClassWithImportInnerOnDemand | 0.00

### ASTVariableDeclaratorIdTest

| testIsExceptionBlockParameter | 0.09
| testTypeNameNode | 0.66

### SimplifyConditionalTest

| testAll | 1.52

### LocalScopeTest

| testNameWithThisOrSuperIsNotFlaggedAsUnused | 0.10
| testNameWithSuperIsNotFlaggedAsUnused | 0.00
| testLocalVariableDeclarationFound | 0.67
| testQualifiedNameOccurrence | 0.03
| testPostfixUsageIsRecorded | 0.01
| testLocalVariableTypesAreRecorded | 0.00
| testMethodArgumentTypesAreRecorded | 0.01
| testgetEnclosingMethodScope | 0.00

### JUnitAssertionsShouldIncludeMessageTest

| testAll | 1.17

### DontImportJavaLangRuleTest

| testAll | 0.92

### DuplicateJspImportTest

| testAll | 0.60

### HTMLRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.71
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### ASTLiteralTest

| testIsStringLiteral | 0.77
| testIsNotStringLiteral | 0.00

### SwitchDensityTest

| testAll | 1.33

### ASTAssignmentOperatorTest

| testSimpleAssignmentRecognized | 0.78
| testCompoundAssignmentPlusRecognized | 0.01
| testCompoundAssignmentMultRecognized | 0.00

### UseIndexOfCharTest

| testAll | 1.21

### SystemPrintlnTest

| testAll | 1.37

### AvoidEnumAsIdentifierTest

| testAll | 1.20

### SimplifyBooleanAssertionTest

| testAll | 1.29

### AvoidInstanceofChecksInCatchClauseTest

| testAll | 1.45

### UseStringBufferLengthTest

| testAll | 1.23

### XMLRendererTest

| test_no_dupes | 0.17
| test_one_dupe | 0.03
| testRender_MultipleMatch | 0.01

### ExcessivePublicCountTest

| testAll | 1.00

### JDKVersionTest

| testEnumAsKeywordShouldFailWith14 | 0.48
| testEnumAsIdentifierShouldPassWith14 | 0.02
| testEnumAsKeywordShouldPassWith15 | 0.01
| testEnumAsIdentifierShouldFailWith15 | 0.00
| testAssertAsKeywordVariantsSucceedWith1_4 | 0.10
| testAssertAsVariableDeclIdentifierFailsWith1_4 | 0.00
| testAssertAsMethodNameIdentifierFailsWith1_4 | 0.00
| testAssertAsIdentifierSucceedsWith1_3 | 0.01
| testAssertAsKeywordFailsWith1_3 | 0.02
| testVarargsShouldPassWith15 | 0.01
| testVarargsShouldFailWith14 | 0.00
| testJDK15ForLoopSyntaxShouldPassWith15 | 0.01
| testJDK15ForLoopSyntaxWithModifiers | 0.01
| testJDK15ForLoopShouldFailWith14 | 0.00
| testJDK15GenericsSyntaxShouldPassWith15 | 0.01
| testVariousParserBugs | 0.03
| testNestedClassInMethodBug | 0.02
| testGenericsInMethodCall | 0.01
| testGenericINAnnotation | 0.04
| testGenericReturnType | 0.00
| testMultipleGenerics | 0.01
| testAnnotatedParams | 0.01
| testAnnotatedLocals | 0.01
| testAssertAsIdentifierSucceedsWith1_3_test2 | 0.00

### CallSuperInConstructorTest

| testAll | 1.24

### NcssTypeCountTest

| testAll | 1.22

### ConstructorCallsOverridableMethodTest

| testAll | 1.35

### CyclomaticComplexityTest

| testOneMethod | 0.98
| testNastyComplicatedMethod | 0.28
| testConstructor | 0.07
| testLessComplicatedThanReportLevel | 0.03

### AbstractClassWithoutAbstractMethodTest

| testAll | 1.38

### NonStaticInitializerRuleTest

| testAll | 1.28

### AvoidAssertAsIdentifierTest

| testOne | 1.20

### VBHTMLRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.71
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### PropertyAccessorTest

| testIntegers | 0.20
| testBooleans | 0.00
| testStrings | 0.00

### FinalizeDoesNotCallSuperFinalizeRuleTest

| testAll | 1.32

### ExcludeLinesTest

| testAcceptance | 0.93
| testAlternateMarker | 0.02

### EmptyTryBlockRuleTest

| testAll | 1.46

### FinalFieldCouldBeStaticRuleTest

| testAll | 1.38

### EnumeratedPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### SuppressWarningsTest

| testClassLevelSuppression | 0.81
| testInheritedSuppression | 0.00
| testMethodLevelSuppression | 0.01
| testConstructorLevelSuppression | 0.01
| testFieldLevelSuppression | 0.01
| testParameterLevelSuppression | 0.01
| testLocalVariableLevelSuppression | 0.01
| testSpecificSuppression | 0.01
| testNoSuppressionBlank | 0.01
| testNoSuppressionSomethingElseS | 0.01

### SummaryHTMLRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.72
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### EmptySynchronizedBlockRuleTest

| testAll | 1.34

### UnnecessaryConstructorTest

| testAll | 1.35

### XPathJspRuleTest

| testExpressionMatching | 0.56

### TypeSetTest

| testASTCompilationUnitPackage | 0.07
| testAddImport | 0.00
| testFindClassImplicitImport | 0.01
| testFindClassSamePackage | 0.02
| testFindClassExplicitImport | 0.00
| testFindClassImportOnDemand | 0.00
| testFindClassPrimitive | 0.00
| testFindClassVoid | 0.00
| testFindFullyQualified | 0.00
| testPrimitiveTypeResolver | 0.00
| testVoidTypeResolver | 0.00
| testExplicitImportResolver | 0.00
| testImplicitImportResolverPass | 0.00
| testImplicitImportResolverPassFail | 0.00
| testCurrentPackageResolverPass | 0.00
| testImportOnDemandResolverPass | 0.00
| testImportOnDemandResolverFail | 0.00

### UseCorrectExceptionLoggingTest

| testAll | 1.36

### MetricTest

| testGetMetricName | 0.07
| testGetCount | 0.00
| testGetTotal | 0.00
| testGetLowValue | 0.00
| testGetHighValue | 0.00
| testGetAverage | 0.00
| testGetStandardDeviation | 0.00

### ClassScopeTest

| testEnumsClassScope | 0.77
| testAnonymousInnerClassName | 0.00
| testContains | 0.00
| testCantContainsSuperToString | 0.00
| testContainsStaticVariablePrefixedWithClassName | 0.00
| testClassName | 0.01
| testMethodDeclarationRecorded | 0.00
| testTwoMethodsSameNameDiffArgs | 0.01
| testOneParams | 0.01
| testTwoParams | 0.00
| testNoParams | 0.01
| testNestedClassDeclFound | 0.00
| testbuz | 0.01
| testMethodUsageSeen | 0.01
| testMethodUsageSeenWithThis | 0.04
| testMethodUsageSeen2 | 0.04

### ShortMethodNameTest

| testAll | 1.22

### OptimizableToArrayCallTest

| testAll | 1.40

### BeanMembersShouldSerializeRuleTest

| testAll | 1.19

### UnusedLocalVariableTest

| testAll | 1.27

### UseAssertEqualsInsteadOfAssertTrueTest

| testAll | 1.26

### MethodWithSameNameAsEnclosingClassRuleTest

| testAll | 1.05

### UncommentedEmptyMethodRuleTest

| testAll | 1.36

### ImageFinderFunctionTest

| testSingleImage | 0.10
| testSeveralImages | 0.00

### UselessOperationOnImmutableTest

| testAll | 1.24

### NonCaseLabelInSwitchStatementRuleTest

| testAll | 1.40

### LooseCouplingTest

| testAll | 1.08

### ClassDeclTest

| testPublic | 0.69
| testAbstract | 0.00
| testFinal | 0.00
| testStrict | 0.01
| testPublicFinal | 0.00

### MissingBreakInSwitchTest

| testAll | 1.50

### UseSingletonTest

| testAll | 1.31
| testResetState | 0.08

### JumbledIncrementerRuleTest

| testAll | 1.46

### SimpleNodeTest

| testMethodDiffLines | 0.72
| testMethodSameLine | 0.00
| testNoLookahead | 0.00
| testHasExplicitExtends | 0.04
| testNoExplicitExtends | 0.00
| testHasExplicitImplements | 0.00
| testNoExplicitImplements | 0.00
| testColumnsOnQualifiedName | 0.02
| testLineNumbersForNameSplitOverTwoLines | 0.00
| testLineNumbersAreSetOnAllSiblings | 0.11
| testFindChildrenOfType | 0.00
| testFindChildrenOfTypeMultiple | 0.00
| testFindChildrenOfTypeRecurse | 0.00
| testGetFirstChild | 0.00
| testGetFirstChildNested | 0.00
| testGetFirstChildNestedDeeper | 0.00
| testContainsNoInnerWithAnonInner | 0.02
| testContainsChildOfType | 0.00
| testXPathNodeSelect | 0.16

### ReportTest

| testBasic | 0.71
| testMetric0 | 0.00
| testMetric1 | 0.00
| testExclusionsInReportWithAnnotations | 0.06
| testExclusionsInReportWithNOPMD | 0.00
| testSortedReport_File | 0.04
| testSortedReport_Line | 0.00
| testListener | 0.00
| testSummary | 0.00

### ReplaceHashtableWithMapTest

| testAll | 1.22

### AvoidDeeplyNestedIfStmtsRuleTest

| testAll | 1.26

### VariableNamingConventionsTest

| testAll | 1.14

### InefficientEmptyStringCheckTest

| testAll | 1.26

### StringPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### StringUtilTest

| testReplaceWithOneChar | 0.08
| testReplaceWithMultipleChars | 0.00
| testReplaceStringWithString | 0.00
| testReplaceStringWithString2 | 0.00
| testReplaceWithNull | 0.00

### OverrideBothEqualsAndHashcodeTest

| testAll | 1.34

### ConsecutiveLiteralAppendsTest

| testAll | 2.06

### UnusedNullCheckInEqualsTest

| testAll | 1.42

### ASTFieldDeclarationTest

| testIsArray | 0.52
| testMultiDimensionalArray | 0.00
| testIsSyntacticallyPublic | 0.06
| testWithEnum | 0.02
| testGetVariableName | 0.00

### UselessStringValueOfTest

| testAll | 1.20

### UselessAssignmentRuleTest

| testAll | 0.00

### AvoidInstantiatingObjectsInLoopsTest

| testAll | 1.14

### StringToStringRuleTest

| testAll | 1.29

### BooleanPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### NpathComplexityTest

| testAll | 1.18

### IfStmtsMustUseBracesRuleTest

| testAll | 1.23

### NonThreadSafeSingletonTest

| testAll | 1.42

### AvoidDuplicateLiteralsRuleTest

| testAll | 1.18
| testStringParserEmptyString | 0.00
| testStringParserSimple | 0.00
| testStringParserEscapedChar | 0.00
| testStringParserEscapedEscapedChar | 0.00

### MatchTest

| testSimple | 0.08
| testCompareTo | 0.00

### ReplaceVectorWithListTest

| testAll | 1.22

### ExcessiveImportsTest

| testAll | 0.90

### MethodArgumentCouldBeFinalTest

| testAll | 1.19

### ReplaceEnumerationWithIteratorTest

| testAll | 1.22

### ReturnFromFinallyBlockTest

| testAll | 1.36

### EqualsNullRuleTest

| testAll | 1.50

### AcceptanceTest

| testFieldFinder | 0.72

### ForLoopShouldBeWhileLoopRuleTest

| testAll | 1.58

### AvoidCallingFinalizeTest

| testAll | 1.12

### FileSelectorTest

| testSelectJavaFile | 0.07
| testSelectJspFile | 0.00
| testUnwantedFile | 0.00
| testUnwantedJavaFile | 0.00

### MethodScopeTest

| testMethodParameterOccurrenceRecorded | 0.74
| testMethodName | 0.00

### EmptyWhileStmtRuleTest

| testAll | 1.44

### AvoidThrowingRawExceptionTypesTest

| testAll | 1.23

### LongClassRuleTest

| testAll | 1.11

### EmptyIfStmtRuleTest

| testAll | 1.34

### UseProperClassLoaderTest

| testAll | 1.24

### SwitchStmtsShouldHaveDefaultRuleTest

| testAll | 1.40

### ParserCornersTest

| testGetFirstASTNameImageNull | 0.54

### MatchAlgorithmTest

| testSimple | 0.21
| testIgnore | 0.01

### NcssConstructorCountTest

| testAll | 1.21

### UseArraysAsListTest

| testAll | 1.53

### AcceptanceTest

| testbook | 0.92
| testLabelledBreakLockup | 0.08
| test_1 | 0.02
| test_2 | 0.02
| test_3 | 0.01
| test_4 | 0.00
| test_6 | 0.01
| test_7 | 0.01
| test_8 | 0.01
| test_9 | 0.01
| test_10 | 0.01
| test_11 | 0.01
| test_12 | 0.01
| test_13 | 0.03
| test_14 | 0.02
| test_15 | 0.02
| test_16 | 0.03
| test_17 | 0.03
| test_18 | 0.02
| test_19 | 0.02
| test_20 | 0.05
| test_21 | 0.05
| test_22 | 0.02
| test_23 | 0.02
| test_24 | 0.03
| test_25 | 0.02
| test_26 | 0.02
| test_27 | 0.02
| test_28 | 0.04
| test_29 | 0.01
| test_30 | 0.02

### EncodingTest

| testDecodingOfUTF8 | 0.00

### UnconditionalIfStatementRuleTest

| testAll | 1.36

### DataFlowNodeTest

| testAddPathToChild | 0.08
| testRemovePathToChild | 0.00
| testRemovePathWithNonChild | 0.00
| testReverseParentPathsTo | 0.00
| testSetType | 0.00

### MissingSerialVersionUIDTest

| testAll | 1.23

### VariableUsageFinderFunctionTest

| testLookingForUsed | 0.10

### SourceFileScopeTest

| testClassDeclAppears | 0.61
| testPackageIsEmptyString | 0.00
| testPackageNameFound | 0.02
| testNestedClasses | 0.01

### UnusedFormalParameterRuleTest

| testAll | 1.13

### CommandLineOptionsTest

| testTargetJDKVersion | 0.08
| testDebug | 0.00
| testExcludeMarker | 0.00
| testShortNames | 0.00
| testEncoding | 0.00
| testInputFileName | 0.00
| testReportFormat | 0.00
| testRulesets | 0.00
| testCommaSeparatedFiles | 0.00
| testNotEnoughArgs | 0.02
| testNullArgs | 0.00
| testReportFile | 0.00
| testCpus | 0.00
| testRenderer | 0.03
| testOptionsFirst | 0.00

### CPPTokenizerTest

| testMultiLineMacros | 0.14
| testDollarSignInIdentifier | 0.00
| testDollarSignStartingIdentifier | 0.00
| testWideCharacters | 0.00

### ScopeCreationVisitorTest

| testScopesAreCreated | 0.74

### IframeMissingSrcAttributeTest

| testAll | 0.82

### ExternalRuleIDTest

| testSimpleRef | 0.07

### UnusedPrivateMethodRuleTest

| testAll | 1.26

### SuspiciousOctalEscapeTest

| testAll | 1.10

### UseAssertSameInsteadOfAssertTrueTest

| testAll | 1.32

### UnusedImportsRuleTest

| testAll | 1.21

### NoClassAttributeTest

| testAll | 0.80

### MethodReturnsInternalArrayTest

| testAll | 1.10

### ImmutableFieldTest

| testAll | 1.50

### IfElseStmtsMustUseBracesTest

| testAll | 1.34

### IntegerInstantiationTest

| testAll | 1.24

### ProperCloneImplementationTest

| testAll | 1.30

### AvoidThrowingNullPointerExceptionTest

| testAll | 1.22

### MethodNamingConventionsTest

| testAll | 1.05

### DuplicateImportsRuleTest

| testAll | 0.89

### EmptyStaticInitializerRuleTest

| testAll | 1.31

### IdempotentOperationsTest

| testAll | 1.27

### ASTThrowStatementTest

| testGetFirstASTNameImageNull | 0.78
| testGetFirstASTNameImageNew | 0.01

### GeneralFiddlingTest

| test1 | 0.96

### BooleanInstantiationRuleTest

| testAll | 1.25

### AccessorClassGenerationTest

| testAll | 1.29

### SuspiciousConstantFieldNameTest

| testAll | 1.22

### AvoidNonConstructorMethodsWithClassNameTest

| testAll | 1.10

### FloatPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### GlobalScopeTest

| testClassDeclAppears | 0.60
| testEnums | 0.10

### IntegerPropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### XMLRendererTest

| testEmptyReport | 0.16
| testErrorReport | 0.02
| testSingleReport | 0.68
| testDoubleReport | 0.01
| testTwoFiles | 0.01

### EmptyFinallyBlockRuleTest

| testAll | 1.35

### ApplierTest

| testSimple | 0.07

### EmptyFinalizerRuleTest

| testAll | 1.25

### ClassCastExceptionWithToArrayTest

| testAll | 1.41

### AvoidReassigningParametersTest

| testAll | 1.39

### AppendCharacterWithCharTest

| testAll | 1.26

### UnnecessaryFinalModifierTest

| testAll | 1.32

### NcssMethodCountTest

| testAll | 1.26

### DoubleCheckedLockingTest

| testAll | 1.22

### ClassNamingConventionsTest

| testAll | 1.00

### CouplingBetweenObjectsTest

| testAll | 1.01

### FieldDeclTest

| testPublic | 0.71
| testProtected | 0.01
| testPrivate | 0.00
| testStatic | 0.00
| testFinal | 0.00
| testTransient | 0.00
| testVolatile | 0.00

### AvoidCatchingThrowableRuleTest

| testAll | 1.03

### AttributeTest

| testConstructor | 0.10

### BigIntegerInstantiationTest

| testAll | 1.25

### SourceCodeTest

| testSimple | 0.18

### StringBufferInstantiationWithCharTest

| testAll | 1.27

### AvoidDecimalLiteralsInBigDecimalConstructorTest

| testAll | 1.34

### TooManyFieldsTest

| testAll | 1.23

### ASTBooleanLiteralTest

| testTrue | 0.78
| testFalse | 0.00

### ArrayIsStoredDirectlyTest

| testAll | 1.09

### NoLongScriptsTest

| testAll | 0.87

### UnusedModifierRuleTest

| testAll | 1.18

### AvoidArrayLoopsTest

| testAll | 1.51

### LongVariableRuleTest

| testAll | 1.39

### SingularFieldRuleTest

| testAll | 1.49

### OnlyOneReturnRuleTest

| testAll | 1.18

### TestClassWithoutTestCasesTest

| testAll | 1.00

### InsufficientStringBufferDeclarationTest

| testAll | 1.81

### JUnitTestsShouldContainAssertsTest

| testAll | 1.21

### UselessOverridingMethodTest

| testAll | 1.55

### PackageCaseTest

| testAll | 1.24

### UnnecessaryCaseChangeRuleTest

| testAll | 1.17

### NoPackageTest

| testAll | 1.16

### VariableNameDeclarationTest

| testConstructor | 0.74
| testExceptionBlkParam | 0.00
| testIsArray | 0.01
| testPrimitiveType | 0.00
| testArrayIsReferenceType | 0.00
| testPrimitiveTypeImage | 0.00
| testRefTypeImage | 0.00
| testParamTypeImage | 0.04

### BooleanInversionTest

| testAll | 1.28

### AvoidSynchronizedAtMethodLevelTest

| testAll | 1.36

### PMDTaskTest

| testNoFormattersValidation | 0.08
| testFormatterWithNoToFileAttribute | 0.02
| testNoRuleSets | 0.00
| testNestedRuleset | 0.00
| testInvalidJDK | 0.00

### MatchesFunctionTest

| testMatch | 0.08
| testNoMatch | 0.00

### StatementAndBraceFinderTest

| testStatementExpressionParentChildLinks | 0.92
| testVariableDeclaratorParentChildLinks | 0.03
| testIfStmtHasCorrectTypes | 0.01
| testWhileStmtHasCorrectTypes | 0.01
| testForStmtHasCorrectTypes | 0.02
| testOnlyWorksForMethodsAndConstructors | 0.00

### MisleadingVariableNameTest

| testAll | 1.30

### YAHTMLRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.71
| testRendererEmpty | 0.00
| testRendererMultiple | 0.01
| testError | 0.00

### TypePropertyTest

| testType | 0.08
| testAsDelimitedString | 0.02
| testValueFrom | 0.00
| testErrorFor | 0.00

### DataflowAnomalyAnalysisTest

| testAll | 1.26

### StructureTest

| testAddResultsinDFANodeContainingAddedNode | 0.10

### FinalizeOverloadedRuleTest

| testAll | 1.23

### ASTFormalParameterTest

| testVarargs | 0.71

### ASTMethodDeclarationTest

| testGetVariableName | 0.09

### ASTPrimarySuffixTest

| testArrayDereference | 0.77
| testArguments | 0.01

### CollapsibleIfStatementsTest

| testAll | 1.46

### UseStringBufferForStringAppendsTest

| testAll | 1.14

### AvoidRethrowingExceptionTest

| testAll | 1.32

### TextPadRendererTest

| testNullPassedIn | 0.01
| testRenderer | 0.70
| testRendererEmpty | 0.00
| testRendererMultiple | 0.00
| testError | 0.00

### LoggerIsNotStaticFinalTest

| testAll | 1.29

### NoScriptletsTest

| testAll | 0.82

### LongParameterListRuleTest

| testAll | 1.06

### AssignmentInOperandTest

| testAll | 1.16

### CompareObjectsWithEqualsTest

| testAll | 1.39

### MoreThanOneLoggerTest

| testAll | 1.02

### ASTInitializerTest

| testDontCrashOnBlockStatement | 0.78

### UnsynchronizedStaticDateFormatterTest

| testAll | 1.28

### AvoidProtectedFieldInFinalClassRuleTest

| testAll | 1.56

### ASTSwitchLabelTest

| testDefaultOff | 0.80
| testDefaultSet | 0.01

### SimplifyBooleanExpressionsRuleTest

| testAll | 1.41

### UnnecessaryParenthesesTest

| testAll | 1.28

### ExcessiveMethodLengthTest

| testAll | 1.16

### ExceptionSignatureDeclarationRuleTest

| testAll | 1.03

### DoublePropertyTest

| testAsDelimitedString | 0.10
| testValueFrom | 0.00
| testErrorFor | 0.00
| testType | 0.00

### SuspiciousEqualsMethodNameRuleTest

| testAll | 1.29

### AvoidUsingOctalValuesTest

| testAll | 1.26

### SuspiciousHashcodeMethodNameRuleTest

| testAll | 1.18

### NoInlineStyleInformationTest

| testAll | 0.60

### EmptyCatchBlockRuleTest

| testAll | 1.80

### ASTImportDeclarationTest

| testImportOnDemand | 0.70
| testGetImportedNameNode | 0.00
| testStaticImport | 0.01
| testStaticImportFailsWithJDK14 | 0.00

### UnusedPrivateFieldRuleTest

| testAll | 1.27

### ASTBlockStatementTest

| testIsAllocation | 0.08
| testIsAllocation2 | 0.00

### NoJspForwardTest

| testViolation | 0.80

### NoHtmlCommentsTest

| testAll | 0.78

### SimplifyStartsWithTest

| testAll | 1.30

### SimpleDateFormatNeedsLocaleRuleTest

| testAll | 1.38

### UseAssertNullInsteadOfAssertTrueTest

| testAll | 1.26

### BrokenNullCheckTest

| testAll | 1.44

### UseLocaleWithCaseConversionsRuleTest

| testAll | 1.45

### FormatterTest

| testType | 0.00
| testNull | 0.08

### JavaTokensTokenizerTest

| test1 | 0.18
| test2 | 0.00
| testDiscardSemicolons | 0.00
| testDiscardImports | 0.00
| testDiscardPkgStmts | 0.00