Archives pour mars, 2009

Au menu des évolutions de Sonar

La version 1.7 de Sonar à peine sortie du four, regardons de plus près ce qui nous attend dans les prochains mois !

Les hotspots

Les hotspots sont en quelque sorte une vue centralisant l’ensemble des points à corriger au sein de l’application offrant un RoI (« retour sur investissement ») maximal.
En d’autres termes, c’est ici qu’il faudra se rendre afin de savoir quelles corrections apporter afin d’améliorer son application significativement, et ce, en contrepartie de relativement peu d’efforts.

Hotspot
Hotspot
Sur ces maquettes d’écrans, on peut y voir les hotspots, montrant par exemple quelles sont les violations les plus fréquentes, les classes ayant le plus de violations, ou encore un rapport sur les tests unitaires et leur couverture.
Reste à voir si ces hotspots seront paramétrables ou non…

Concernant cette nouvelle fonctionnalité, pas de révolution, puisque toutes ces données existent déjà sur Sonar. Toutefois, le fait de les retrouver centralisées en un point sera sans aucun doute appréciable !

La gestion du PHP

Sonar supporte nativement le langage Java. Il est également possible, via un plugin, de faire analyser le code PL/SQL de son application.
Sonar s’oriente désormais vers l’analyse du code PHP.
Comme pour le Java, Sonar se basera sur des outils du monde PHP pour l’analyse du code. On devrait y trouver des outils tels que :

  • PHPUnit : tests unitaires et couverture de code.
  • PHP_CodeSniffer : détection des violations de règles de standard.
  • PHP Depend : différents types de métriques sur le code (complexité cyclomatique, statistiques, etc.)

(la liste de ces outils ne semble pas encore définitive)

Plus d’informations à venir quant au support du PHP…

Ré-écriture de JavaNCSS

JavaNCSS est un outil plutôt ancien (il date de 1997, ce qui correspond presque aux tous débuts de Java !), mais plutôt intéressant.
Il offre de nombreuses statistiques sur le code source Java, indiquant le nombre de lignes, de commentaires, de méthodes, de classes, etc.
Le principal souci de JavaNCSS est qu’il n’a pas suffisament suivi les évolutions du langage, et de nombreuses limitations sont ainsi apparues, dont celles-ci :

  • les classes internes ne sont pas analysées,
  • il est impossible de faire ignorer à l’analyseur les commentaires de début de fichier (décrivant généralement la licence utilisée par le programme),
  • annotations ou génériques (« nouveautés » intégrées depuis Java 5) mal supportés,
  • etc.

L’équipe de Sonar a donc décidé de corriger ces problèmes en réécrivant le moteur de parsing de l’outil JavaNCSS.
Il est à noter que ces améliorations viendront donner se greffer directement sur le projet JavaNCSS, et seront donc disponibles en dehors de Sonar !

Voir ici pour de plus amples informations à ce sujet.

Start Slide Show with PicLens Lite PicLens

Sonar 1.7 est là !

L’équipe suisse de Sonar continue son excellent travail sur son outil de suivi de qualité, et tient les délais pour la release désormais mensuelle.

C’est donc la version 1.7 qui est sortie hier, le 18 mars 2009.
Qu’apporte cette nouvelle version, à l’exception de quelques bugs fixes ?

  • Possibilité d’ignorer certaines classes ou package du contrôle de qualité. Voilà une fonctionnalité utile quand il on dispose de nombreuses classes générées automatiquement par des librairies tierces.
  • Affichage des détails des erreurs des tests unitaires (ça, ça me manquait dans la version 1.6 !)
  • Visualisation des lignes dupliquées d’une classe.
  • Nuage de couverture disponibles désormais pour les packages et modules (et non plus seulement pour les classes).

Détails des erreurs des tests unitaies
Détails des erreurs des tests unitaies

Duplication de lignes
Visualisation de la duplication des lignes dans le code

Bref, que du bon !

Pour le téléchargement, ça se passe par ici.

Start Slide Show with PicLens Lite PicLens