Wann man dazu greift
- Agenten produktionsnah agieren.
- Tool- und Workflow-Grenzen verifiziert werden müssen.
- Regressionen über Versionen hinweg sichtbar werden müssen.
/pattern/integration-tests/
Agenten werden über realistische Szenarien, Tools, Speicher und Kontrollflüsse getestet. Da die Ausgabe nicht-deterministisch ist, prüfen Assertionen Verhaltenseigenschaften ('das Rückerstattungs-Tool höchstens einmal aufgerufen', 'im Budget geblieben', 'die außerhalb des Umfangs liegende Anfrage abgelehnt') statt exakter Zeichenketten, und skalieren im größeren Maßstab zu einer Simulationsumgebung, die Tausende synthetischer Szenarien wiedergibt.
In der PraxisEin Kundenservice-Agent wird nächtlich mit 500 synthetischen Gesprächsszenarien getestet; jeder Durchlauf wird gegen Assertionen wie 'das Rückerstattungs-Tool höchstens einmal aufgerufen' und 'keine PII preisgegeben' bewertet, und Fehler blockieren den Release.
Ohne esOhne Integrationstests bleiben Verhaltensregressionen, die durch eine Prompt-Änderung oder ein Modell-Upgrade eingeführt wurden, unentdeckt, bis ein Produktionsvorfall das fehlerhafte Muster aufdeckt.
Wann man dazu greift
Wann es nach hinten losgeht
Die Abwägung
Höhere operative Sicherheit wird auf Kosten teurer Testdaten, Mocks und Evaluationslogik gewonnen.
End-to-End-Läufe werden gegen Erwartungen geprüft.
Der Test prüft nur, dass die Antwort nicht leer ist. Der Agent fällt auf ein generisches 'Dabei kann ich nicht helfen' zurück und alle Tests bleiben grün.
Lösung · Gegen typisierte Zustandsinvarianten und explizite Inhaltsprüfungen assertieren, nicht nur auf Lebendigkeit. Strukturelle Assertionen mit LLM-as-Judge für semantische Qualität kombinieren.
Eine Verhaltens-Assertion besteht bei den meisten Durchläufen und schlägt bei einigen fehl. Unter Release-Druck wiederholt das Team bis grün oder löscht den Test — und eine echte sporadische Regression geht nun still in Produktion.
Lösung · Jedes Szenario N-mal ausführen und eine Bestehensquote assertieren, nicht einen einzelnen Durchlauf. Fixtures seeden und aufzeichnen, damit Fehler deterministisch reproduzierbar sind; einen Flaky-Fall in Quarantäne stellen, niemals löschen.
Weitermachen
Patterns, Frameworks und Seiten durchsuchen.