Sonar exécutera CheckStyle, FindBugs et PMD, ainsi que quelques autres "plugins" tels que Cobertura (couverture de code) par défaut pour les projets Java. La principale valeur ajoutée, cependant, est qu'il stocke l'historique dans une base de données. Vous pouvez alors voir les tendance . Êtes-vous améliorer la base de code ou faites-vous le contraire ? Seul un outil doté de mémoire peut vous le dire.
Vous devriez exécuter Sonar dans votre système CI afin que même les choses qui prennent un certain temps à s'exécuter (comme le CPD - détecteur de copier-coller) puissent être exécutées. Et vous aurez votre historique. Alors qu'avec un plugin Eclipse, par exemple, vous détecterez les violations plus tôt - ce qui est génial - mais vous serez tenté de l'exécuter moins souvent s'il commence à prendre trop de temps, ou d'exécuter moins de "plugins de qualité" (comme sauter le CPD ou sauter l'analyse de couverture de code). Et vous n'aurez pas d'historique.
De plus, le Sonar génère visuel rapports, style "tableau de bord". Ce qui le rend très facile à appréhender. Avec Sonar dans Jenkins, vous serez en mesure de montrer aux développeurs et à votre direction les effets du travail effectué sur la qualité de la base de code au cours des dernières semaines et des derniers mois.