Parasoft-Logo Suche

Entdecken Sie das TÜV-zertifizierte GoogleTest mit Agentic AI für C/C++-Tests!
Details ansehen »

Probieren Sie Parasoft Jtest aus!

Machen Sie Unit-Tests mit KI-Unterstützung einfacher und schneller.

Kostenlos Ausprobieren

WEBINAR

Intelligentere Pull Requests: KI, die Java-Code testet, behebt und validiert

Neue KI-gestützte Codegenerierungs-Workflows beschleunigen die Java-Anwendungsentwicklung. Viele Teams suchen jedoch noch nach Wegen, Testverfahren und Codequalitätssicherung parallel zu skalieren. Mit zunehmenden Codeänderungen stehen Entwicklungsteams unter neuem Druck – Aufgaben wie die Erstellung von Unit-Tests und die Behebung von Fehlern in der statischen Analyse erfordern weiterhin einen erheblichen Entwicklungsaufwand.

 

In diesem Video sehen Sie, wie Agentic AI das Testen und die Codeanalyse direkt im Pull-Request-Workflow unterstützt.

Du wirst lernen, wie man:

  • Automatische Auslösung von Workflows für statische Analysen und Unit-Tests bei jedem Pull Request mithilfe von agentic AI.
  • Verstöße erkennen, beheben und diese Behebungen mithilfe von LLM-Agenten überprüfen, bevor der Code zusammengeführt wird.
  • Generieren Sie Unit-Tests für den geänderten Code, um die Qualität auf PR-Ebene zu stärken und die Qualitätskriterien zu erfüllen.
  • Die Behebung statischer Fehleranalysen und die Generierung von Unit-Tests werden in einem autonomen CI/CD-Workflow kombiniert.

Die Evolution zu intelligenten Arbeitsabläufen

Traditionell löst das Erstellen eines Pull Requests einen CI/CD-Job aus, der statische Analysen und Unit-Tests durchführt. Werden Probleme gefunden, muss der Entwickler die Berichte manuell prüfen, die Probleme verstehen, sie beheben und anschließend auf die erneute Ausführung des Prozesses warten. Diese manuelle Fehlerbehebung ist zeitaufwändig, führt zu Kontextwechseln, verlangsamt die Entwicklung und erhöht das Fehlerrisiko.

Der neue Ansatz beinhaltet intelligente, agentenbasierte Arbeitsabläufe. Anstatt Probleme nur zu identifizieren, können diese Arbeitsabläufe autonom:

Dieser moderne Workflow führt zu geringeren technischen Schulden, schnelleren Feedbackzyklen, verbesserter Zuverlässigkeit bei Regressionstests und ermöglicht es den Entwicklern, sich mehr auf das Schreiben von Code anstatt auf die Behebung von Problemen zu konzentrieren.

So funktioniert es: Ein technischer Blick

Der typische Workflow für Pull Requests beginnt damit, dass ein Entwickler einen Feature-Branch und anschließend einen Pull Request erstellt. Dadurch wird ein CI/CD-Prozess ausgelöst, der statische Analysen und Unit-Tests durchführt. Treten Verstöße oder Testfehler auf, behebt der Entwickler diese manuell. Anschließend erfolgt eine manuelle Codeüberprüfung, bevor der Pull Request zusammengeführt werden kann.

Ein agentenbasierter Workflow ersetzt den manuellen Fehlerbehebungsprozess durch einen KI-Agenten. Dieser Agent greift auf die Analyseergebnisse zu und kann Probleme automatisch beheben. Anschließend erstellt er einen eigenen Pull Request mit diesen Korrekturen, den der Entwickler vor dem Zusammenführen mit seinem ursprünglichen Pull Request prüfen kann. Dadurch wird der manuelle Aufwand für die Behebung von Codefehlern und die Generierung von Tests erheblich reduziert.

Live-Demonstration

In einer Demonstration mit IntelliJ und GitHub erstellt ein Entwickler einen Branch und nimmt eine Codeänderung vor. Diese Änderung löst einen GitHub-Workflow aus, der mit einem KI-Agenten konfiguriert ist. Dieser Agent führt eine statische Analyse durch, behebt Fehler und generiert Unit-Tests für den nicht aufgedeckten Code. Anschließend erstellt er einen neuen Pull Request mit diesen automatisierten Korrekturen.

Der Entwickler kann anschließend die KI-generierten Änderungen in diesem neuen Pull Request prüfen. Ist er zufrieden, kann er diese Korrekturen in seinen ursprünglichen Pull Request übernehmen. Dieser Prozess optimiert die Behebung von Codeproblemen und stellt sicher, dass Qualitätsstandards ohne großen manuellen Aufwand erfüllt werden.

Wichtige Erkenntnisse

  • Künstliche Intelligenz beschleunigt zwar die Codegenerierung, führt aber zu einer Qualitätslücke.
  • Herkömmliche Validierungs- und Korrekturprozesse sind langsam und manuell.
  • Agentische KI-Workflows können Codeänderungen autonom testen, korrigieren und validieren.
  • Dies reduziert den Entwicklungsaufwand, senkt die technischen Schulden und verbessert die Codequalität.
  • Die Einbindung des Menschen in den Überprüfungsprozess ist für Vertrauen und Kontrolle unerlässlich.
  • Die Kombination von traditioneller Automatisierung mit agentenbasierter KI liefert die besten Ergebnisse.

Berücksichtigung von Bedenken: Vertrauen und Kosten

Eine häufige Sorge ist, wie man KI-generierten Tests und Korrekturen vertrauen kann. Entscheidend ist, den Entwickler stets auf dem Laufenden zu halten. Die menschliche Überprüfung von KI-generierten Pull Requests ist unerlässlich. Die Implementierung dieser Workflows innerhalb des Pull-Request-Prozesses anstatt im Hauptzweig ermöglicht eine kontrollierte Überwachung.

Ein weiteres Problem sind die Kosten der LLM-Nutzung. Strategien zur Kostenkontrolle umfassen Folgendes:

  • Optimierung der Eingabeaufforderungen und Fähigkeiten des KI-Agenten zur Reduzierung des Tokenverbrauchs.
  • Durch die Nutzung von Tools, die nicht auf LLM basieren, für Aufgaben wie statische Analyse und Unit-Test-Generierung direkt in der IDE oder über Build-Plugins, wird ein Großteil der Arbeit an externe Dienstleister verlagert, wodurch der KI-Agent weniger zu tun hat.
  • Intelligente Skripte werden implementiert, um LLMs nur bei Bedarf aufzurufen (z. B. wenn Java-Dateien geändert werden).
  • Für Aufgaben wie die Generierung von Massenregressionstestsuiten werden proprietäre KI-Algorithmen eingesetzt, die oft effizienter sind als LLM-basierte Ansätze.

Durch die Kombination bewährter, traditioneller Testwerkzeuge mit KI-gestützten Workflows können Teams signifikante Vorteile erzielen, ohne Kompromisse bei der Qualität einzugehen oder bestehende Funktionen zu beeinträchtigen. KI entwickelt sich stetig weiter, und ein hybrider Ansatz, bei dem KI menschliches Fachwissen ergänzt, ist der effektivste Weg in die Zukunft.