Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

SonarQube integrates a set of java code quality analysis tools with a web-base UI to allow easy identification of code problems. Once a day, Jenkins runs a build that triggers SonarQube to generate quality information about the ONOS source.  SonarQube keeps track of runs over time, so we can track the quality of the ONOS code base as it evolves. You can view the ONOS SonarQube web console to see how we are doing.

SonarQube integrates the following tools:

JaCoCo

JaCoCo is a coverage analysis tool.  SonarQube runs coverage analyses on all of the unit tests in the ONOS tree and publishes them in a clickable drill down web UI.  Percentages are given for the branch and line coverage of each class in ONOStools to check unit test coverage, java source code compliance with coding standards, static detection of coding errors like possible null pointer dereferences, and detection of blocks of code that are duplicated. These tools are integrated into one shared web UI and the results are tracked to allow tracking the state of our source code over time.