Parasoft C/C++test 2022.2 unterstützt das neue MISRA C:2012 Amendment 3 und eine Entwurfsversion von MISRA C++ 202x. Erfahren Sie mehr >>

Statische Java-Analyse

Analyse des statischen Java-Codes

Unterstützt von Parasoft Jtest, der Testlösung für die Unternehmensentwicklung für Java

Stellen Sie sichere und zuverlässige Software bereit

Stellen Sie sicher, dass der Code zuverlässig ist

Validieren Sie die Zuverlässigkeit und Sicherheit des Codes und reduzieren Sie Schwachstellen durch Compliance-Prüfungen für CWE, OWASP und mehr.

Identifizieren Sie Sicherheitsrisiken

Vereinfachen Sie die Identifizierung und Minderung von Sicherheitslücken. Entdecken Sie potenzielle Risiken mithilfe statischer Analysen und priorisieren Sie die Arbeit, um Probleme zu beheben.

Problembehebung optimieren

Erhalten Sie Empfehlungen für Verstöße und Schwachstellen mit hoher Priorität, um diese zu beheben, und weisen Sie ihnen geeignete Ressourcen zu.

Static Code Analysis Tool zur Entwicklung zuverlässiger Java-Anwendungen

Parasoft Jtest verifiziert die Qualität des Java-Codes und überprüft die Einhaltung von Sicherheitsstandards (OWASP, CWE, CERT, PCI usw.), indem es eine breite Palette von proprietären statischen Analyseprüfprogrammen (1000+) anwendet, um weit über Open Source hinauszugehen. Parasoft Jtest nutzt Parasofts zentralen Reporting- und Analyse-Hub mit seiner Process Intelligence Engine, um tiefe Einblicke in die Codequalität und das Risiko zu erhalten.

Wie funktioniert es?

Parasoft Jtest bietet einen umfassenden Satz statischer Analyseprüfer und Testtechniken, die verwendet werden können, um die Einhaltung von Sicherheitsstandards (OWASP, CWE, CERT, PCI usw.) und benutzerdefinierten Codierungsstandards (unter Verwendung von integrierten oder benutzerdefinierten benutzerdefinierten Regeln), Laufzeitprobleme frühzeitig und ohne Ausführung von Code erkennen (z. B. Nullzeiger-Ausnahmen, Array außerhalb der Grenzen), Codeduplizierung identifizieren und Komplexität und Codestruktur verstehen (unter Nutzung von über 40 branchenweit anerkannten Codemetriken).

Jtest verwendet eine hochmoderne Java-Code-Parsing-Engine statische Analyse und den zu testenden Code zu verstehen und Codefehler zu finden, die durch Regelverletzungen angezeigt werden. Es wird mit über 1000 verschiedenen Checkern geliefert, die allgemeine Best Practices (Effective Java, The Java Programming Language) und Industriestandards (OWASP, CWE, CERT, PCI und mehr) sowie spezialisierte Bugfinder (wie Nullzeiger-Ausnahmen) abdecken , Ressourcenlecks, Deadlocks, Division durch Null, Array außerhalb der Grenze und mehr).

Damit Benutzer besser verstehen, welche statischen Analyseregeln verwendet werden sollen, organisiert Jtest Metadaten und ordnet sie den Regeln zu.

  • Integrierte Testkonfigurationen: Mit vordefinierten Regelsätzen können Benutzer schnell und bequem statische Analysen durchführen.
  • Regelkategorien: Jede Regel gehört zu einer Regelkategorie (z. B. Optimierung, Sicherheit, Ausnahmen, API), damit Benutzer schnell verstehen, wie Regeln ihren Testprioritäten zugute kommen können.
  • Schweregrad: Jeder Regel wird ein Schweregrad zugewiesen, damit Benutzer die möglichen Auswirkungen der Regelverletzung besser verstehen können.

Die statische Codeanalyse kann in der IDE (Eclipse, IntelliJ), über die Befehlszeile oder mithilfe von Build-System-Plugins (Ant, Maven, Gradle) für Automatisierungs- und Continuous-Integration-Szenarien durchgeführt werden. Auf die Ergebnisse der Analyse kann sofort zugegriffen werden (in der IDE oder mit HTML-/XML-/PDF-Berichten), in CI-Systeme wie GitHub, GitLab und Azure DevOps integriert oder per Zugriff darauf zugegriffen werden Parasoft DTP für Nachbearbeitung, Berichterstellung und erweiterte Analysen. Jtest bietet erweiterte Funktionen, um die statische Analyse zu einem wartbaren Element des Entwicklungsprozesses zu machen, z. B. das Unterdrücken unerwünschter Ergebnisse, das Priorisieren und Zuweisen von Ergebnissen an Entwickler und vieles mehr.

Eigenschaften

Um zu verhindern, dass Softwarefehler in die Codebasis eindringen, analysiert Parasoft Jtest den Analysebaum innerhalb einer Datei und sucht nach Mustern, die schlechte Entwicklungspraktiken darstellen. Jtest deckt gefährliche Pfade durch die Codebasis auf, die zur Laufzeit Instabilitäten und Sicherheitsprobleme verursachen könnten, ohne all diese Pfade programmgesteuert auszuführen. Durch die Analyse der Ausführungspfade durch den Code kann die statische Analyse von Jtest potenzielle Probleme früh in der Entwicklungsphase erkennen, wie z. B. Nullzeiger-Ausnahmen, Division durch Null, Array-Out-of-Bound-Probleme und mehr.

Um die Komplexität zu verwalten, hilft Ihnen Jtest beim Verstehen von Codemetriken. Jtest hilft Ihnen dabei, die Struktur / das Design Ihrer Codebasis zu verstehen und die Komplexität Ihrer Codebasis zu messen, und hilft Ihnen beim Verwalten, Festlegen von Schwellenwerten und Ergreifen von Maßnahmen, um potenzielle Wartungs-Albträume zu identifizieren.

Jtest identifiziert Fälle, in denen Code dupliziert wurde oder in denen der Code so ähnlich ist, dass Sie möglicherweise die Implementierung konsolidieren möchten. Auf diese Weise können Sie nicht nur ermitteln, wo Sie den Code möglicherweise umgestalten, um das Design zu verbessern, sondern auch den Wartungszyklus reduzieren, der mit Änderungen in der Codebasis verbunden ist.

Parasoft Jtest bietet eine Reihe integrierter Checker zur Überprüfung der Einhaltung von Standards wie OWASP Top 10 2021, OWASP API Security Top 10 2019, CERT für Java, CWE-SANS Top 25 2021, PCI Data Security Standard 3.2 und mehr. Durch die Nutzung von Codierungsstandards können Benutzer sichere und zuverlässige Web-/verteilte Anwendungen und Dienste erstellen.

Unter Verwendung des kontinuierlichen Qualitätsmodus von Parasoft Jtest in der IDE (Eclipse, IntelliJ) analysiert Jtest den Code automatisch im Hintergrund (jedes Mal, wenn Sie auf Speichern drücken) und warnt Benutzer, wenn es Fehler erkennt. Mit dieser Funktion erhalten Benutzer sofortiges Feedback, um Probleme so früh wie möglich zu erkennen.

Die anpassbare Codeanalyse von Jtest ermöglicht es Teams, organisationsspezifische Richtlinien und Codierungsstandards zu definieren. Mit dieser Flexibilität können Benutzer Regeln ein- und ausschalten (benutzerdefinierte Testkonfigurationen erstellen, die nur Regeln enthalten, die aus der Entwicklungsperspektive des Unternehmens relevant sind), vorhandene Regeln ändern (Regeln können parametrisiert werden, um den Entwicklungsanforderungen besser zu entsprechen) und völlig neue erstellen Benutzerdefinierte Regeln, ohne dass Code geschrieben werden muss, um integrierte Regeln zu erweitern (oder zu ersetzen).

Um die gleichen Entwicklungsstrategien im gesamten Unternehmen durchzusetzen, können diese benutzerdefinierten Testkonfigurationen und statischen Analyseregeln über die Quellcodeverwaltung für einzelne Projekte oder über eine zentralisierte Infrastruktur gemeinsam genutzt werden, damit verschiedene Teams denselben Codierungsstandards folgen können.

Benutzer von Parasoft Jtest können die Ergebnisse der statischen Analyse direkt in der IDE (Eclipse, IntelliJ) überprüfen, die als verwertbare Ergebnisse in den Ansichten „Finding“ und „Finding Details“ dargestellt werden. Auch Analyseergebnisse können darin gesammelt und analysiert werden Parasoft DTP für erweiterte Berichte, tiefere Einblicke, ML-Vorhersagemodelle für die Priorisierung und Zuordnung von Ergebnissen und den Zugriff auf Trends und historische Daten, ein Schlüsselelement bei der Bewertung des Qualitätszustands des Projekts und der Bereitstellung von Daten für externe Parteien wie Wirtschaftsprüfer. Die Ergebnisse sind auch als HTML-, PDF- und benutzerdefinierte Erweiterungsberichte verfügbar.

Profitieren Sie vom Parasoft-Ansatz

Eine integrierte Lösung für Java-Qualität

Anstatt sich in andere Tools und Lösungen integrieren zu müssen, bietet Parasoft Jtest alles, mit Einheitentests, Codeabdeckung und einer leistungsstarken Verarbeitungs-Engine für Analysen und Berichte. Die funktionalen Testwerkzeuge von Parasoft lassen sich für eine effiziente Testautomatisierung auch problemlos mit der Codeabdeckungs-Engine von Jtest verbinden und bieten den Benutzern alles, was sie zum End-to-End-Test ihrer Java-Anwendungen benötigen.

Tiefe Einblicke von Smart Analytics zur schnellen Risikobewertung

Im Gegensatz zu anderen kommerziellen oder Open-Source-Tools bietet Parasoft eine einzigartige Datenerfassungs- und Intelligenz-Engine, die anderen Produkten fehlt. Die Business Intelligence des aktuellen Zustands des Produkts, kombiniert mit Schlüsselindikatoren für Risiken, ermöglicht es Softwareteams, sich auf Schlüsselbereiche ihres Produkts zu konzentrieren. Ohne diese Fähigkeit müssen Benutzer mehrere Berichterstellungsprodukte von Drittanbietern erwerben und jedes einzelne Tool integrieren.

Sofortiges Analyse-Feedback direkt in der IDE

Durch die Nutzung der einzigartigen Funktionen von Jtest in der IDE können Entwickler den kontinuierlichen Qualitätsmodus verwenden, um Jtest im Hintergrund seine Arbeit erledigen zu lassen. Jtest analysiert den Code automatisch und warnt Benutzer, wenn es einen Fehler erkennt, sodass Benutzer von sofortigem Feedback in ihrem Arbeitsablauf profitieren können.