ASTQ Summit ist auf Anfrage verfügbar! Hören Sie, wie Branchenführer berichten, wie sie kontinuierliche Qualität liefern. Jetzt ansehen >>

X
Java Test Impact Analyse

Testwirkungsanalyse

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

Test Impact Analysis für Java Unit Testing

Parasoft Jtest optimiert die Ausführung von Komponententests, indem ermittelt wird, welche Tests basierend auf Codeänderungen ausgeführt werden müssen, und automatisch nur die Tests ausgeführt werden, die zur Validierung von Codeänderungen erforderlich sind. Dadurch wird weniger Zeit benötigt, um Feedback zur Qualität des zu erbringenden Produkts zu erhalten.

Wie funktioniert es?

Je schneller Sie testen können, desto schneller können Sie loslassen. Mit Parasoft Jtest können Sie die Zeit zum Testen Ihrer Anwendung durch Optimierung verkürzen Unit-Test-Ausführung innerhalb der IDE und im CI-Prozess, basierend auf genau dem, was sich im Code geändert hat. Mit seinen Smart Test Execution-Funktionen analysiert Parasoft Jtest mithilfe der Testauswirkungsanalyse den Quellcode, um die Änderungen zu identifizieren, die ein Entwickler an der Anwendung vorgenommen hat, und identifiziert automatisch die Teilmenge der Tests, die ausgeführt werden müssen, um seine Änderungen zu validieren. Der Benutzer muss lediglich auf "Ausführen" klicken, um die betroffenen Tests automatisch auszuführen.

In der IDE

Erbaut auf Parasoft Jtest's AbdeckungsanalyseJtest sammelt Informationen darüber, welcher Code von welchen Tests ausgeführt wird, und wendet diese Informationen in der IDE des Entwicklers an, wenn der Entwickler den Code ändert. Auf diese Weise kann der Entwickler die spezifischen Tests, die ausgeführt werden müssen, um den geänderten Code zu überprüfen, leicht identifizieren und ausführen bricht keine Tests.

Jtest verfolgt, welche der betroffenen Tests ausgeführt wurden, welche bestanden wurden und welche fehlgeschlagen sind, sodass der Entwickler leicht feststellen kann, welche Tests noch ausgeführt werden müssen oder welche Tests fehlgeschlagen sind und behoben werden müssen. Sobald alle Tests ausgeführt wurden und bestanden wurden, weiß der Entwickler, dass es sicher ist, seinen Code festzuschreiben und fortzufahren. Jtest unterstützt Projekte, die sich in der Git- oder SVN-Quellcodeverwaltung befinden und von gängigen IDEs (Eclipse, IntelliJ) ausgeführt werden können.

Innerhalb des CI-Prozesses

Parasoft Jtest optimiert Unit-Test-Ausführung während des CI-Prozesses und kann nahtlos in Projekte integriert werden, die entweder Maven oder Gradle als Build-System verwenden, um sofortiges Feedback zu Änderungen zu erhalten. Ohne diese Funktion würden fehlerhafte Codeänderungen zu Regressionen führen, die nicht so schnell abgefangen werden oder die Arbeit anderer Teammitglieder beeinträchtigen würden. Jtest identifiziert, welcher Code sich seit dem Baseline-Build geändert hat (dh den letzten nächtlichen Build), bestimmt, welche Tests ausgeführt werden müssen, um diesen Code auszuführen, und führt dann nur diese Teilmenge von Tests aus. Mit diesem Workflow können Teams CI-Jobs einrichten, die nur Tests basierend auf den letzten Codeänderungen ausführen. Dadurch wird die Zeit, die zum Ausführen eines CI-Jobs benötigt wird, von Stunden auf Minuten verkürzt.

Eigenschaften

Parasoft Jtest korreliert Testausführungsdaten automatisch mit Testabdeckungsdaten und ermittelt anhand des derzeit entwickelten Codes, welche Tests ausgeführt werden müssen. Benutzer sparen Zeit, ohne unnötige Tests durchführen zu müssen, und Teams profitieren von sofortigem Feedback während der Entwicklung und nach dem Einchecken des Codes.

Die Ansicht Impacted Unit Tests von Parasoft Jtest in der IDE zeigt Entwicklern, welche Tests ausgeführt werden müssen, um Änderungen zu überprüfen, die lokal in ihrer IDE vorgenommen wurden. Entwickler wissen oft nicht, welche Tests ausgeführt werden sollen, um Codeänderungen zu validieren. Daher checken sie ihren Code entweder ein, ohne Tests auszuführen (eine sehr schlechte Vorgehensweise), oder sie führen nur einen oder zwei Tests aus, die sie kennen (bei denen einige leicht übersehen werden) ) oder sie führen alle ihre Tests aus (was Zeit verschwendet). Stattdessen werden mit Parasoft Jtest betroffene Tests sofort identifiziert und können automatisch ausgeführt werden. Der eingecheckte Code wird stabiler, da er vor dem Einchecken gründlich getestet wurde.

Während des CI-Prozesses identifiziert Parasoft Jtest nur die Tests, die erforderlich sind, um alle Codeänderungen zu überprüfen, die seit dem letzten Baseline-Build (normalerweise dem nächtlichen Build) festgeschrieben wurden, und führt diese aus. Dadurch wird die zum Ausführen von CI erforderliche Zeit erheblich verkürzt . Dies ermöglicht es Teams, von einem echten CI-Prozess zu profitieren.

Die Analyse der Testauswirkungen geht mit intelligenten Analysen für alle Ihre Testtechniken weiter. Die Process Intelligence Engine von Parasoft bietet weitere Einblicke, indem sie allgemeine Lücken zwischen mehreren Testtechniken identifiziert, wenn Teams zu funktionalen / manuellen Tests übergehen.

Profitieren Sie vom Parasoft-Ansatz

Überlegene Optimierung und Effizienz von Java-Unit-Tests

Kein anderes Produkt optimiert Java Unit-Test-Ausführung innerhalb der IDE und als Teil eines CI-Workflows unter Verwendung der tatsächlichen Korrelation zwischen der Testausführung und dem während des Tests ausgeübten Code. Alles ist automatisch und der Entwickler muss nur mit der rechten Maustaste klicken und die Tests ausführen.

Schnellere Rückmeldung zu Codeänderungen, die zu Testfehlern geführt haben

Parasoft Jtest identifiziert nicht nur direkte Abhängigkeiten zwischen Tests und Code, sondern auch indirekte Abhängigkeiten. Es ist umfassend und intelligent und hilft Teams, so schnell wie möglich zu verstehen, nachdem der Code überprüft hat, ob der Code Tests gebrochen hat.

Integration, die tiefe Einblicke in die Softwarequalität bietet

Integration in Parasofts Funktionsprüfungssoftware und preisgekrönt Process Intelligence Engine ermöglicht Benutzern ein tieferes Verständnis der Auswirkungen von Änderungen auf den Rest der Softwaretestpraxis. Teams profitieren von Effizienz und Produktivität auf höchstem Niveau.