Découvrez comment la solution Parasoft Continuous Quality permet de contrôler et de gérer les environnements de test pour fournir des logiciels de haute qualité en toute confiance. Inscrivez-vous pour la démo >>

Analyse statique Java

Analyse de code statique Java

Propulsé par Parasoft Jtest, la solution de test de développement d'entreprise pour Java

Outil d'analyse de code statique pour développer des applications Java fiables

Parasoft Jtest vérifie la qualité du code Java et vérifie la conformité aux normes de sécurité (OWASP, CWE, CERT, PCI, etc.) en appliquant une large gamme de vérificateurs d'analyse statique (plus de 1000) et en utilisant l'ensemble le plus complet d'analyseurs de code statique à suivre au-delà de l'open source. Parasoft Jtest exploite le hub centralisé de reporting et d'analyse de Parasoft, avec son Process Intelligence Engine, pour fournir des informations approfondies sur la qualité du code et les risques.

Comment ça marche?

Parasoft Jtest fournit un ensemble complet de vérificateurs d'analyse statique et de techniques de test qui peuvent être utilisés pour vérifier la conformité aux normes de sécurité (OWASP, CWE, CERT, PCI, etc.) et aux normes de codage personnalisées (en utilisant des règles), recherchez les problèmes d'exécution tôt et sans exécuter de code (par exemple, exceptions de pointeur nul, tableau hors limite), identifiez la duplication de code et comprenez la complexité et la structure du code (en tirant parti de plus de 40 métriques de code acceptées par l'industrie).

Jtest utilise un moteur d'analyse de code Java de pointe pour analyse statique et comprendre le code testé et trouver les défauts de code indiqués par des violations de règles. Il est livré avec plus de 1000 vérificateurs différents qui couvrent les meilleures pratiques générales (Effective Java, le langage de programmation Java) et les normes de l'industrie (OWASP, CWE, CERT, PCI, etc.), ainsi que des détecteurs de bogues spécialisés (tels que null pointer exception , fuites de ressources, blocages, division par zéro, tableau hors limites et plus encore).

Pour aider les utilisateurs à comprendre quelles règles d'analyse statique utiliser, Jtest organise et associe des métadonnées aux règles, en fournissant:

  • Configurations de test intégrées: Des ensembles de règles prédéfinis permettent aux utilisateurs d'effectuer une analyse statique rapidement et facilement.
  • Catégories de règles: Chaque règle appartient à une catégorie de règles (c.-à-d. Optimisation, Sécurité, Exceptions, API) pour aider les utilisateurs à comprendre rapidement comment les règles pourraient profiter à leurs priorités de test.
  • Niveaux de gravité: Chaque règle est affectée d'un niveau de gravité pour aider les utilisateurs à mieux comprendre l'impact potentiel de la violation de règle.

L'analyse de code statique peut être effectuée dans l'EDI (Eclipse, IntelliJ, NetBeans), à partir de la ligne de commande ou à l'aide de plugins de système de construction (Ant, Maven, Gradle) pour des scénarios d'automatisation et d'intégration continue. Les résultats de l'analyse sont immédiatement accessibles (dans l'EDI ou avec des rapports HTML / XML / PDF) ou accessibles par le Process Intelligence Engine de Parasoft pour le post-traitement, le reporting et les analyses avancées. Jtest fournit des fonctionnalités avancées pour faire de l'analyse statique un élément maintenable du processus de développement, comme la suppression des résultats indésirables, la hiérarchisation et l'attribution des résultats aux développeurs, et bien plus encore.

Caractéristiques

Pour se prémunir contre les défauts logiciels entrant dans la base de code, Parasoft Jtest analyse l'arborescence d'analyse dans un fichier et recherche des modèles qui représentent de mauvaises pratiques de développement. Jtest expose des chemins dangereux à travers la base de code qui pourraient causer des instabilités et des problèmes de sécurité au moment de l'exécution, sans exécuter tous ces chemins par programme. En analysant les chemins d'exécution à travers le code, l'analyse statique de Jtest peut détecter les problèmes potentiels au début de la phase de développement, tels que les exceptions de pointeur nul, la division par zéro, le tableau hors des problèmes liés, etc.

Pour gérer la complexité, Jtest vous aide à comprendre les métriques de code. En vous aidant à comprendre la structure / conception de votre base de code et à mesurer la complexité de votre base de code, Jtest vous aide à gérer, à définir des seuils et à prendre des mesures, identifiant les cauchemars de maintenance potentiels.

Jtest identifie les instances où le code a été dupliqué ou où le code est suffisamment similaire pour que vous souhaitiez peut-être consolider l'implémentation. Cela vous aide non seulement à identifier les endroits où vous pourriez refactoriser le code pour bénéficier de la conception, mais également à réduire le cycle de maintenance associé aux modifications de la base de code.

Parasoft Jtest fournit un ensemble de vérificateurs intégrés pour vérifier la conformité aux normes telles que OWASP Top 10 2017, CERT for Java, CWE-SANS Top 25 2011, PCI Data Security Standard 3.2, etc. Tirer parti des normes de codage permet aux utilisateurs de créer des applications et des services Web / distribués sécurisés et fiables.

En utilisant le mode de qualité continue de Parasoft Jtest dans l'EDI (Eclipse, IntelliJ, NetBeans), Jtest analyse automatiquement le code en arrière-plan (chaque fois que vous appuyez sur Enregistrer) et alerte les utilisateurs lorsqu'il détecte des défauts. Grâce à cette fonctionnalité, les utilisateurs obtiennent des commentaires immédiats pour détecter les problèmes le plus tôt possible.

L'analyse de code personnalisable de Jtest permet aux équipes de définir des directives et des normes de codage spécifiques à l'organisation. Grâce à cette flexibilité, les utilisateurs peuvent activer et désactiver les règles (créer des configurations de test personnalisées pour n'inclure que des règles pertinentes du point de vue du développement de l'organisation), modifier les règles existantes (les règles peuvent être paramétrées pour mieux répondre aux besoins de développement) et créer de nouvelles règles personnalisées sans avoir à écrire de code, pour étendre (ou remplacer) les règles intégrées.

Pour appliquer les mêmes stratégies de développement dans toute l'organisation, ces configurations de test personnalisées et règles d'analyse statique peuvent être partagées via le contrôle de code source pour des projets individuels ou via une infrastructure centralisée pour aider différentes équipes à suivre les mêmes normes de codage.

Les utilisateurs de Parasoft Jtest peuvent consulter les résultats de l'analyse statique directement dans l'EDI (Eclipse, IntelliJ, NetBeans), présentés sous forme de résultats exploitables dans les vues Finding and Finding Details. Les résultats de l'analyse peuvent également être collectés et analysés dans le Process Intelligence Engine de Parasoft pour des rapports avancés, des informations plus approfondies et l'accès aux tendances et aux données historiques, un élément clé pour évaluer l'état de qualité du projet et fournir des données à des parties externes, telles que les auditeurs. Les résultats sont également disponibles sous forme de rapports HTML, PDF et d'extensions personnalisées.

Bénéficiez de l'approche Parasoft

Une solution intégrée pour la qualité Java

Au lieu d'avoir à s'intégrer à d'autres outils et solutions, Parasoft Jtest fournit tout cela, avec des tests unitaires, une couverture de code et un puissant moteur de traitement pour l'analyse et la création de rapports. Les outils de test fonctionnel de Parasoft sont également facilement connectés pour une automatisation efficace des tests, fournissant aux utilisateurs tout ce dont ils ont besoin pour tester leur application Java.

Des informations approfondies de Smart Analytics pour évaluer rapidement les risques

Contrairement à tout autre outil commercial ou open source, Parasoft fournit un moteur de collecte de données et de renseignement unique qui manque aux autres produits. La veille économique de l'état actuel du produit, associée à des indicateurs clés de risque, permet aux équipes logicielles de se concentrer sur les domaines clés de leur produit. Sans cette capacité, les utilisateurs doivent acquérir plusieurs produits de reporting tiers et intégrer chaque outil individuel.

Commentaires d'analyse immédiate directement dans l'EDI

Tirant parti des capacités uniques de Jtest dans l'IDE, les développeurs peuvent utiliser le mode de qualité continue pour laisser Jtest faire son travail en arrière-plan. Jtest analysera automatiquement le code et alertera les utilisateurs lorsqu'il détectera un défaut afin que les utilisateurs puissent bénéficier d'un retour immédiat dans leur flux de travail.