Skip to content

Strive for 100% mutation coverage #3708

@rnveach

Description

@rnveach

Now that we implemented pitest in #3271, we should try to increase the mutation coverage for our different checks.
Currently, header package has the lowest percentage at 78%, followed by metrics package at 83%.

FYI: Mutation coverage means a test should prove a line of production code exists. Mutation fails if a line or production code is distorted but no unchanged tests fail. At least one test should fail if production code is changed somehow.

Attention: it is recommended to start with the most easy to fix cases to raise level close to 100%. Only as we reach 100% we could guaranty no leak in testing. It would be better ti finish packages that executed less in time make them 100% and group them in one profile.

To run report on blocks package (profiles are exists for all packages):
mvn clean verify -Ppitest-checks-blocks org.pitest:pitest-maven:mutationCoverage

Current state:

$ grep -E "pitest-checks|mutationThreshold" pom.xml | sed -E "s/(<\/?id>|<\/?mutationThreshold>)//g"
      pitest-checks-blocks
              97
      pitest-checks-coding
              93
      pitest-checks-design
              98
      pitest-checks-header
              78
      pitest-checks-imports
              94
      pitest-checks-indentation
              94
      pitest-checks-javadoc
              95
      pitest-checks-metrics
              83
      pitest-checks-modifier
              100
      pitest-checks-naming
              98
      pitest-checks-regexp
              93
      pitest-checks-sizes
              94
      pitest-checks-whitespace
              96

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions