Outils d'analyse statique : quand moins c'est plus
Par Parasoft
Le 31 janvier 2013
3 min lire
Cependant, lors de l'adoption de l'analyse statique dans un projet, cela peut parfois être accablant. Si vous disposez d'une base de code volumineuse, les outils d'analyse statique peuvent signaler un grand nombre de violations. Cet article présentait deux conseils pour réduire les rapports de violation d'analyse statique.
Astuce 1: Utilisez les suppressions de l'outil d'analyse statique pour les exemptions dans des situations spécifiques
Dans certains cas, vous pouvez être déterminé à suivre une règle d'analyse statique, mais souhaitez autoriser des exemptions dans certaines circonstances. Par exemple, vous avez peut-être une règle qui nécessite un niveau supplémentaire de validation dans le code. Supposons que vous ayez une certaine méthode avec un code critique pour les performances qui est appelé des centaines de fois par minute et que vous avez déjà vérifié qu'un niveau de validation approprié est effectué avant que cette méthode particulière ne soit appelée. Ou supposons que l'analyse basée sur les flux vous avertisse d'un problème grave dans un chemin dont vous êtes certain à 100% qu'il ne peut pas être pris dans l'application intégrée. C'est là que les suppressions d'analyse statique sont utiles.
Les suppressions sont idéales pour les situations où vous souhaitez vérifier quelque chose, mais que vous ne vous souciez pas des problèmes signalés dans des situations exceptionnelles. Avec les suppressions, vous pouvez continuer à rechercher un problème critique sans recevoir de messages répétés concernant vos violations intentionnelles de règles d'analyse statique. Si vous ne souhaitez pas recevoir de messages d'erreur pour des violations d'une règle spécifique, nous vous recommandons de désactiver complètement la règle (voir notre précédent blog sur le nettoyage de votre ensemble de règles d'analyse statique).
Vous pouvez généralement définir des suppressions à partir de l'interface graphique de l'outil d'analyse statique, d'un fichier de configuration ou du code source lui-même. Lorsque les suppressions sont définies dans le code source:
- Vous vous assurez que les mêmes suppressions sont appliquées chaque fois que vous ou un membre de l'équipe analysez ce code.
- Vous pouvez ajouter des commentaires de code expliquant chaque suppression afin que la raison de chaque suppression soit toujours claire lorsque vous ou les membres de l'équipe révisez ou modifiez le code.
- Vous bénéficiez d'un contrôle précis sur les règles appliquées au niveau du fichier, de la classe ou de la ligne.
Vous pouvez généralement supprimer les violations d'une règle spécifique, d'un certain nombre de règles ou de toutes les violations d'une catégorie spécifique. Vous pouvez également exempter certaines sections de code de toute analyse statique (plus d'informations à ce sujet dans le prochain conseil).
Astuce 2: Empêchez votre outil d'analyse statique de vérifier les fichiers problématiques ou les morceaux de code
Parfois, il n’est tout simplement pas logique d’exécuter des outils d’analyse statique sur certains fichiers, par exemple des fichiers générés automatiquement ou des fichiers hérités que vous n’avez pas prévu de toucher. Dans ces cas, vous devez empêcher l'analyse de ces fichiers. C'est encore un autre moyen de vous assurer que vos résultats ne sont pas encombrés d'un tas de violations que vous ne prévoyez pas de corriger.
Il y a quelques façons de le faire. Vous pouvez configurer des filtres de chemin pour exclure les fichiers que vous ne souhaitez pas vérifier ou inclure uniquement ceux que vous souhaitez vérifier. Vous pouvez également configurer votre outil pour ignorer les fichiers contenant un certain commentaire, tel qu'un commentaire indiquant un code généré automatiquement.
D'autres façons de concentrer la vérification de votre outil d'analyse statique incluent:
- Ajout de marqueurs pour indiquer des blocs de code spécifiques que vous souhaitez vérifier dans des fichiers autrement exemptés.
- Excluant certaines méthodes dans des fichiers qui sont par ailleurs analysés.
- Vérifier uniquement les fichiers qui n'ont pas été ajoutés ou modifiés depuis une certaine date limite.
- Vérifier uniquement les fichiers qui ont été ajoutés ou modifiés après une «date limite» ou dans un certain nombre de jours.
Pour en savoir plus sur l'analyse statique Parasoft, rendez-vous sur : https://www.parasoft.com/solutions/static-code-analysis