08. September 2025

Lernen aus Fehlern: Iterationen als Schlüssel zur stabilen AI-Entwicklung

AI in der Softwareentwicklung klingt oft nach Magie – Code generieren lassen, Probleme automatisch lösen, Tests bestehen lassen. Doch die Realität sieht anders aus: Es braucht viele Iterationen, menschliche Korrekturen und klare Kommunikation, um ans Ziel zu kommen. In einer intensiven Session haben wir die Integration von TestContainers in eine Kotlin/Spring-Boot-Codebasis mit Unterstützung einer AI (Claude) umgesetzt. Das Ergebnis: 100 % grüne Tests – aber der Weg dorthin war alles andere als geradlinig.

> Siehe zu diesem Thema auch unseren Blogbeitrag „Jaraco Bills – Eine AI-generierte Rechnungsverwaltung“

Die größten Herausforderungen

  • Falsche Annahmen zu Beginn
    Die AI startete mit generischen Tipps und sogar mit einem falschen Technologie-Stack (TypeScript statt Kotlin). Erst klare Anweisungen führten zurück auf den richtigen Weg.
  • Teilweise Lösungen, viele Iterationen
    Von 93 erfolgreichen Tests im ersten Anlauf, über 158 im zweiten bis schließlich zu 166 von 166. Jede Runde brachte Fortschritt, aber auch neue Probleme.
  • Unerwartete Konflikte
    Annotationen (@DataJpaTest vs. @SpringBootTest) führten zu Konflikten, die die AI nicht vorhergesehen hatte.
  • Missverständnisse bei Anforderungen
    Die AI änderte zunächst sogar Produktionscode – obwohl ausdrücklich nur Tests angepasst werden sollten.
  • Zu komplexe Ansätze
    Anfangs wurden komplizierte Cleanup-Strategien entworfen, bis die einfache Lösung gefunden wurde: getrennte Schemas für unterschiedliche Testarten (Testcontainer vs. Mocks).

Was am Ende funktionierte

  • Explizite Rechercheanforderungen: Erst wenn die AI konkret benannte, welche Infos sie brauchte, kamen bessere Lösungen.
  • Kleine Schritte statt großer Sprünge: Jede Änderung wurde sofort getestet, statt alles auf einmal umzubauen.
  • Direkte Befehle: Kurze, klare Anweisungen („fix“, „push das“) halfen mehr als lange Diskussionen.
  • Humor und Frust: Frust trieb Klarheit, Humor hielt die Zusammenarbeit am Laufen.

Zahlen, die für sich sprechen

  • 6 Iterationen für TestContainers-Setup
  • 4 Iterationen für JSON-Probleme
  • 3 Iterationen für SQL-Typfehler
  • 2 komplette Neuschreibungen von Docker-Compose
  • Von 0 % erfolgreiche Tests → auf 100 % (166/166)
  • Testabdeckung: von 42 % auf 63 %

Die Learnings

Für Entwickler:innen:

  • Klare Grenzen und Anforderungen setzen („nur Tests, nicht Produktion“).
  • Erst recherchieren lassen, dann umsetzen.
  • Iteratives Vorgehen akzeptieren – kleine, kontrollierte Schritte.

Für AI-Systeme:

  • Voraussetzungen prüfen, bevor Lösungen angeboten werden.
  • Einfache Lösungen bevorzugen.
  • Unsicherheiten transparent machen.

Fazit

AI-gestützte Entwicklung ist kein Zaubertrick. Sie ist ein iterativer Prozess, voller kleiner Fehler und Korrekturen – aber mit dem richtigen Zusammenspiel von Mensch und Maschine lassen sich echte Fortschritte erzielen.
Der Weg von 0 zu 100 % grünen und brauchbaren Tests zeigt: Erfolg entsteht durch Zusammenarbeit, klare Kommunikation und pragmatische Lösungen.

 

jaraco-software-engineers-verlauf-cta
jaraco-logo

Kontaktieren Sie uns noch heute und lassen Sie uns gemeinsam Ihre Softwarelösungen entwickeln!