SonarQube (formerly known as Sonar) is a tool, a server, that automatically analyzes your code quality with static code code analysis. It is perfectly integrated in your continuous integration system (CI), such as jenkins.
Some features of the platform includes:
- You commit your changes through your version control system like mercurial, git or svn.
- Your CI (i.e. jenkins) automatically build your software, runs all tests, and, through a sonar plugin, triggers a static code quality analysis of your code. The results will automatically be uploaded to your sonar server, which saves the result in a database. Sonar server offers a neat UI that allows you to browse the rough edges of your code beautifully visualized in ajax style.
- It integrates with external tools such as JIRA and Mantis.
- You can use plugins to expand the its capability.
With the help of SonarQube, you don’t have to worry too much about your code. It can check code duplication, coding standard, lack of coverage, potential bugs, complexity, documentation and design. With all these things done for you automatically, you can almost think that you made a bug-free program.