Konversationsaktion testen

Die Entwicklungsumgebung für Actions Builder und Actions SDK bietet mehrere Methoden zum Testen Ihres Actions-Projekts in jeder Phase des Entwicklungszyklus, von interaktiven Entwicklungstests bis hin zu Betatests für Endnutzer.

Mit den folgenden Funktionen kannst du die Qualität und Zuverlässigkeit deiner Aktion von der ersten Entwicklung bis zur Veröffentlichung verbessern:

  • Mit manuellen Tests über den Simulator kannst du deine Aktion in der Actions Console während der Entwicklung testen.
  • Automatisierte Tests mit Test-Frameworks und der Actions API helfen Ihnen, automatisierte und wiederholbare Tests zu generieren.
  • Nutzertests mit eingeschränkten Alpha- und Betakanälen helfen dir, praktische Tests und Feedback zu erhalten.

Manuelle Tests mit dem Simulator

Mit dem Simulator in der Actions Console kannst du deine Aktion manuell über eine nutzerfreundliche Weboberfläche testen, auf der Hardwaregeräte und deren Einstellungen simuliert werden. Klicken Sie in der Console auf Test (Testen), um den Simulator für Tests im aktuell ausgewählten Projekt zu aktivieren.

Abbildung 1. Benutzeroberfläche des Actions Console Simulators mit Eingabeoptionen

Mit dem Simulator können Sie ein Zielgerät (Smart Display, Smartphone, Lautsprecher), eine Eingabemethode (Touch, Sprache, Tastatur), die Sprache und den Standort Ihrer manuellen Testumgebung angeben. Mit diesen Optionen kannst du Funktionen deiner Aktion schnell und interaktiv auf verschiedenen Geräten und Regionen testen.

Weitere Informationen zum Simulator in der Actions Console

Automatisierte Tests mit der Actions API

Durch das Schreiben automatisierter Tests für deine Aktion kannst du sicherstellen, dass die Konversationslogik deiner Aktion wie beabsichtigt funktioniert, selbst wenn neue Codeänderungen eingeführt werden, ohne dass du den Code jedes Mal manuell testen musst.

Die Node.js-Testbibliothek verwendet die Actions API für die Interaktion mit Ihrem Projektcode. Mit der Testbibliothek kannst du eine Testsuite definieren, die Abfragen an deine Aktion sendet und Assertions zu dieser Ausgabe macht, um Informationen zu verifizieren, die für den Konversationsstatus deiner Aktion spezifisch sind.

Die Actions API bietet REST-Endpunkte, mit denen Sie einen Entwurf Ihrer Aktion erstellen und über Abfragen programmatisch damit interagieren können. Außerdem können Sie übereinstimmende Intent-Daten für eine bestimmte Abfrage finden. Wenn Sie diese Endpunkte direkt verwenden möchten, können Sie die Node.js Actions API-Clientbibliothek herunterladen.

Mit der Testbibliothek können Sie eine einzelne Gesprächsrunde testen, indem Sie eine Abfrage mit der Funktion sendQuery senden. Diese Methode verwendet eine Textabfrage und erstellt eine strukturierte Ausgabe, die den Inhalt der dem Nutzer präsentierten Aufforderung sowie andere Diagnoseinformationen enthält, die erklären, wie die Anfrage verarbeitet wurde. Sie können integrierte Assertion-Methoden im Ausgabetestobjekt verwenden, um das Verhalten Ihrer Aktion zu prüfen, z. B. den zugeordneten Intent und die aktuelle Szene.

Das folgende Beispiel zeigt einen Test, der bestätigt, dass eine Aktion mit der entsprechenden Begrüßungsantwort ausgelöst wird:

it('starts Action and enters the Welcome scene', async function() {
    testManager.setTestSurface('SMART_DISPLAY');
    await testManager.sendQuery('Talk to my test app');
    testManager.assertSpeech('Hello World!');
    testManager.assertText('Hello World!');
    testManager.assertIntent('actions.intent.MAIN');
    testManager.assertScene('Welcome');
    await testManager.sendStop();
    testManager.assertConversationEnded();
});

Das vollständige Arbeitsbeispiel für die in Node.js geschriebene Testsuite finden Sie im Codebeispiel für Konversationskomponenten.

Weitere Informationen zu den ersten Schritten mit diesem Test-Framework finden Sie in der Anleitung zur Node.js-Testbibliothek.

Nutzertests mit Alpha- und Betaversionen

Die Actions Console bietet Optionen, mit denen du deine Aktion für eingeschränkte Release-Kanäle freigeben kannst, damit sie von einer von dir ausgewählten Nutzergruppe getestet werden können. Über die Konsole kannst du deine Aktion für Alpha- und Betakanäle veröffentlichen. So kann eine begrenzte Anzahl von Nutzern sie schon früh im Entwicklungsprozess testen und Feedback geben. Mit dieser Funktion hast du die Möglichkeit, technische oder nutzungsbezogene Probleme zu ermitteln und zu beheben, bevor du deine Aktion in der Produktion veröffentlichst.

Abbildung 2. Über die Oberfläche „Releases“ der Actions Console kannst du Alpha- und Betaversionen für deine Aktion konfigurieren.

Mit der Alpha-Release-Version kannst du deine Aktion für eine Gruppe von 20 Entwicklern freigeben, die deine Aktion dann über Google Assistant-Geräte testen können. Alphaversionen sind ideal für interne Tests, da für den Release keine Aktionsprüfung von Google erforderlich ist. Alphatester erhalten sofort Zugriff auf deine Aktion, wenn sie in diesem Kanal veröffentlicht wird.

Mit der Betaversion kannst du deine Aktion für eine Gruppe von 200 Entwicklern freigeben, die deine Aktion dann über Google Assistant-Geräte testen können. Betaversionen sind ideal, um Nutzern außerhalb Ihrer Organisation Zugriff zu gewähren, wenn Ihr Projekt einer vollständigen Prüfung durch Google unterzogen wurde. Wenn Sie mit dem Ergebnis Ihres Betatests zufrieden sind, können Sie die Betaversion für die Produktion freigeben, da sie die Google-Richtlinienüberprüfung bereits bestanden hat.

Weitere Informationen zu Release-Versionen finden Sie in der Actions Console-Dokumentation zu Releases.