Testübersicht
Kurz gesagt: Tests ermöglichen es Ihnen, das Verhalten Ihres Bots automatisch zu validieren, indem Sie Testfälle mit Turns (Benutzereingaben) und Bedingungen (Validierungsregeln) erstellen. Erstellen Sie einen Test, fügen Sie Turns hinzu, definieren Sie, was passieren soll, führen Sie ihn aus und erhalten Sie sofortige Ergebnisse, ob er bestanden oder nicht bestanden hat.
Warum Tests wichtig sind
Ein Bot ist selten ein in sich geschlossenes System. Er hängt typischerweise von Drittanbieter-LLMs ab, deren Verhalten sich zwischen Modellversionen ändern kann, von externen APIs, die sich ändern oder nicht verfügbar werden können, und von komplexer Flusslogik, bei der eine kleine Änderung unbeabsichtigte Nebenwirkungen an anderer Stelle haben kann. Jede dieser Faktoren kann den Zweck eines Bots jederzeit zunichtemachen – nicht nur, wenn Sie eine Änderung bereitstellen, sondern auch, wenn sich etwas außerhalb Ihrer Kontrolle ändert.
Darauf zu warten, dass ein Kunde meldet, dass der Bot nicht mehr funktioniert, ist keine Strategie. Ebenso wenig ist es eine Strategie, nach jeder Änderung manuell jeden Gesprächspfad durchzugehen. Automatisierte Tests ermöglichen es Ihnen, das erwartete Verhalten einmal zu definieren und kontinuierlich zu überprüfen, sodass Sie Probleme erkennen, bevor es Ihre Benutzer tun.
Kernkonzepte
Testfall
Ein Testfall modelliert ein einzelnes Gesprächsszenario. Er besteht aus einem oder mehreren Turns und definiert, was der Bot bei jedem Schritt tun soll. Ein Testfall repräsentiert typischerweise einen spezifischen Benutzerfluss – zum Beispiel, wenn ein Benutzer eine Adressänderung anfordert oder nach dem Status seiner Bestellung fragt.
Turn
Ein Turn ist ein Austausch: Der Benutzer sendet eine Nachricht, der Bot antwortet. Ein Testfall kann mehrere Turns haben, um ein vollständiges mehrstufiges Gespräch zu simulieren. Jeder Turn enthält seine eigene Benutzereingabe und eine Reihe von Bedingungen, die das Verhalten des Bots für diesen Schritt validieren.
Bedingung
Bot-Entwickler wissen, was ihr Bot tun soll – aber sie können nicht genau wissen, was er sagen wird. Die Antwort hängt vom LLM, der Gesprächshistorie, von Drittanbieterdaten und davon ab, wie der Benutzer seine Eingabe formuliert hat. Die genaue Wortwahl ist absichtlich unvorhersehbar.
Bedingungen überbrücken diese Lücke. Anstatt genaue Ausgaben zu behaupten, überprüfen sie, ob der Bot den gewünschten Zustand erreicht hat: die richtigen Daten wurden extrahiert, der korrekte Fluss wurde ausgelöst, die Antwort trug die richtige Absicht. Eine Bedingung ist eine Validierungsregel, die an einen Turn angehängt ist und die Frage beantwortet: "Hat der Bot das getan, was er tun sollte?"
Nachdem der Bot geantwortet hat, werden alle Bedingungen für diesen Turn ausgewertet, um festzustellen, ob der Turn bestanden oder nicht bestanden hat. Bedingungen können die Textantwort des Bots überprüfen, welche Tools aufgerufen wurden, welche Daten extrahiert wurden oder eine KI-basierte Qualitätsbewertung anwenden. Siehe Bedingungen für alle verfügbaren Typen.
Ausführung
Wenn Sie einen Testfall ausführen, simuliert das System das Gespräch Turn für Turn. Jeder Turn wird anhand seiner Bedingungen bewertet. Die Ausführung stoppt beim ersten Fehler, sodass Sie ein klares Signal erhalten, wo genau das Verhalten von den Erwartungen abwich.
Testsuite
Eine Testsuite ist eine benannte Sammlung von Testfällen. Suiten ermöglichen es Ihnen, verwandte Tests zu gruppieren – zum Beispiel alle Tests für Ihren Checkout-Fluss – und sie zusammen auszuführen. Siehe Testsuiten für Details.
Erste Schritte
Der schnellste Weg, einen ersten Testfall zu erstellen, besteht darin, ein echtes Gespräch mit Ihrem Bot im Entwicklungs-Chat zu führen und es dann direkt in einen Testfall zu konvertieren. Das System generiert automatisch alle Turns aus dem Gespräch. Von dort aus fügen Sie Bedingungen hinzu, um zu definieren, was das Bestehen für jeden Turn bedeutet.
Wenn Sie dies in der Praxis sehen möchten, bevor Sie in die Referenzseiten eintauchen, führt das Adressänderungsbeispiel durch einen vollständigen Testfall von Anfang bis Ende – einschließlich zweier verschiedener Strategien, wie man ihn entwerfen kann.
Was als Nächstes
- Bedingungen — Validieren Sie Bot-Antworten, extrahierte Daten, Tool-Aufrufe und Gesprächsqualität
- Eingabegenerierung — Verwenden Sie LLM-generierte Benutzereingaben für realistischere und vielfältigere Tests
- Testsuiten — Gruppieren Sie Testfälle und führen Sie sie zusammen aus
- Testausführung — Wie die Testausführung funktioniert und wie man Ergebnisse interpretiert
- Beispiel: Adressänderung — Ein konkreter Durchgang eines echten Testfalls