Willkommen beim Google Home Developer Center, der neuen Anlaufstelle für Smart-Home-Aktionen. Hinweis:Sie erstellen weiterhin Aktionen in der Actions Console.

Google Home-Test-Suite

Mit Sammlungen den Überblick behalten Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.

Google Home Test Suite ist eine Webanwendung, mit der Sie die Smart-Home-Aktion selbst testen können. Test Suite generiert und führt automatisch Testläufe auf der Grundlage der mit Ihrem Konto verknüpften Geräte und Merkmale aus. Wenn Sie die Tests abgeschlossen haben, können Sie die Testergebnisse einsehen oder das Formular senden, um die Testergebnisse an Google zu senden.

Die von Test Suite ausgeführten Tests umfassen unter anderem die folgenden:

  • Prüft, ob der Berichtsstatus und die Anfragesynchronisierung für Ihre Geräte und Merkmale implementiert sind.

  • Prüft, ob der Intent QUERY für Ihr Gerät implementiert ist und die Ergebnisse mit dem Report-Status übereinstimmen.

Klicken Sie auf die Schaltfläche unten, um das Test Suite-Tool zu starten:

Test Suite starten

Aktion selbst testen

Im folgenden Abschnitt wird beschrieben, wie Sie Test Suite auf Ihrem Gerät und im Aktionsprojekt für Smart-Home-Geräte ausführen. Bei Test Suite müssen Sie sich anmelden, damit Geräte in Ihrer Google Home Graph geprüft und Befehle direkt an Google Assistant gesendet werden können.

So testen Sie Ihre Aktion:

  1. Öffnen Sie Test Suite in Ihrem Webbrowser.
  2. Melden Sie sich über die Schaltfläche rechts oben in Google an.

  3. Konfigurieren Sie die Projektdetails:

    1. Geben Sie im Feld Projekt-ID die Projekt-ID für die Smart-Home-Aktion ein.
    2. Klicken Sie auf Weiter.
  4. Konfigurieren Sie die Testeinstellungen:

    1. Lassen Sie bei der Zertifizierung Ihrer Smart-Home-Aktion den Standardwert für die Zeitüberschreitung für den Berichtstatus/die Synchronisierungsanfrage unverändert. Zu Testzwecken können Sie den Wert für die Zeitüberschreitung aber ändern, wenn der Agent mehr Zeit benötigt, um den Status an Home Graph zu melden.
    2. Achte bei der Zertifizierung deiner Smart-Home-Aktion darauf, dass die Option Test Request Sync aktiviert ist. Beim Testen wirst du aufgefordert, ein Gerät hinzuzufügen, zu aktualisieren oder zu entfernen und zu prüfen, ob sich die Geräteliste in Home Graph geändert hat. Änderungsaktionen werden über die getestete Integration ausgeführt. Die zu testende Integration muss immer mit mindestens einem Gerät verbunden sein, das mit dem Agent-Nutzer verbunden ist.

    3. Wenn Sie einen Szenenmerkmal verwenden, wählen Sie Szenenmerkmal testen aus.

    4. Wenn Sie die Testsuite für Local Home-Geräte ausführen, wählen Sie Supports Local Home SDK aus.

      1. Wählen Sie Lokale Ausführung oder Nahtlose Einrichtung aus.
      2. Klicken Sie auf Unterstützt lokale Abfrage, wenn das Gerät den QUERY-Intent lokal verarbeiten kann.
  5. Führen Sie einen Testlauf aus und sehen Sie sich die Ergebnisse an:

    1. Klicken Sie auf Weiter, um Tests auszuführen. Die Schnittstelle zeigt die getesteten Geräte und Merkmale.
  6. Rufen Sie die Seite Ergebnisse und Einreichung auf:

    1. Klicken Sie nach Abschluss der Tests auf Weiter, um die Ergebnisse aufzurufen.

Die Testergebnisse umfassen die Anzahl der bestandenen und fehlgeschlagenen Tests sowie einen endgültigen Wert, der den Prozentsatz der Karten/Tickets angibt.

Validierungstest für die Kontoverknüpfung

Die Kontoverknüpfung spielt eine wichtige Rolle im Smart Home von Google. Mit dem Validierungstest zur Kontoverknüpfung in Test Suite wird der OAuth-Dienst auf potenzielle Probleme geprüft.

Der Validierungstest zur Kontoverknüpfung enthält Tests zum Validieren von Zugriffstokens und Aktualisierungstokens:

Validierungsprüfung für Zugriffstoken

Von Ihrem Token Exchange-Endpunkt zurückgegebene Zugriffstoken werden getestet, um sicherzustellen, dass sie ein gültiges Format haben und mit einem gültigen Aktualisierungstoken zurückgegeben werden.

Testartikel Erklärung
Prüfen, ob das Zugriffstoken das JWT hat Für die Google-Kontoverknüpfung werden keine Zugriffstokens im JWT-Format empfohlen. Wenn ein JWT-Format gefunden wird, wird die folgende Warnung angezeigt: The access token seems to be JWT, this is not good. Because it unnecessarily exposes information about partner implementation and we recommend opaque symmetric encrypted access token.
Prüfen Sie, ob das Ablaufdatum des Zugriffstokens abgelaufen ist. Ein Aktualisierungstoken muss angegeben werden, wenn das Zugriffstoken abläuft. Dieser Test schlägt fehl, wenn kein Aktualisierungstoken gefunden wird.

Aktualisierungsprüfungs-Token aktualisieren

Aktualisierungstokens werden getestet, um sicherzustellen, dass der Tokenaustausch-Endpunkt sie ordnungsgemäß gegen neue Zugriffstoken austauscht.

Testartikel Erklärung
Aktualisierungstoken mit ungültigem Aktualisierungstoken und Prüfung der Partnerantwort Ihr Server sollte den HTTP-Fehler 400 Bad Request mit {"error": "invalid_grant"} an eine ungültige Aktualisierungstoken-Anfrage zurückgeben. Wenn die Antwort nicht mit „Fehlercode oder Nachricht“ übereinstimmt, schlägt dieser Testfall fehl. Weitere Informationen finden Sie unter Aktualisierungstoken für Zugriffstokens austauschen.
Testen, ob das Zugriffstoken nach der Tokenaktualisierung aktualisiert wurde Neue Zugriffstokens sollten als Antwort auf Aktualisierungstoken-Anfragen zurückgegeben werden. Wenn Ihr Server dasselbe Zugriffstoken bereitstellt, schlägt der Testfall fehl.
Prüfen Sie, ob das noch gültige Zugriffstoken noch gültig ist. Die Ablaufzeit des Zugriffstokens wird angezeigt.
Prüfen Sie, ob das Aktualisierungstoken während der Aktualisierung rotiert wurde. Wir prüfen, ob Aktualisierungstoken nach einer Aktualisierungstokenanfrage geändert werden. Wenn sich das Aktualisierungstoken ändert, sollte der Server ein altes Aktualisierungstoken erst entwerten, nachdem ein neues Aktualisierungstoken verwendet wurde. So werden Race-Bedingungen verhindert, die möglicherweise die Kontoverknüpfung eines Nutzers unterbrechen. Der Test schlägt fehl, wenn Sie das alte Aktualisierungstoken entwerten, bevor das neue verwendet wird.

Fehlermeldungen

In der folgenden Tabelle finden Sie einige gängige Fehlermeldungen und entsprechende Lösungsvorschläge.

Fehlermeldung Problembehebung
Die HomeGraph API wurde im Projekt <_id_> noch nicht verwendet oder ist deaktiviert Die HomeGraph API muss aktiviert sein.
Angeforderte Entität nicht gefunden Prüfen Sie, ob agentUserId gültig und mit Ihrem Dienst verknüpft ist.
Sie benötigen die Berechtigung resourcemanager.projects.get für das Projekt ${your project id} und alle Berechtigungen auf dem Zustimmungsbildschirm.
  1. Folgen Sie der Anleitung unter IAM-Berechtigungen beheben, damit Ihr Konto die Berechtigungen des Projekts resourcemanager.projects.get hat.
  2. Öffne die Seite Apps mit Zugriff auf dein Konto, um die folgenden Berechtigungen für „Testsuite für Smart-Home-Geräte“ zu prüfen:
    • Grundlegende Kontoinformationen
      1. Primäre E-Mail-Adresse für das Google-Konto abrufen
      2. Personenbezogene Daten abrufen, einschließlich aller Daten, die Sie öffentlich zugänglich gemacht haben
    • Zusätzlicher Zugriff
      1. Assistant verwenden: umfassender Zugriff auf Ihr Google-Konto
      2. Smart-Home-Geräte im Home Graph prüfen und steuern
    Wenn jemand fehlt, entfernen Sie zuerst den Zugriff und gewähren Sie alle Berechtigungen auf dem Zustimmungsbildschirm, wenn Sie sich wieder anmelden.

Testergebnisse senden

Ihre Test Suite-Ergebnisse müssen 100% der Tests bestehen, bevor Sie das Zertifizierungsformular einreichen. Wenn Sie Merkmale haben, die manuelle Tests erfordern, sollten Sie das Test Suite-Tool ausführen und das Ergebnis anhängen, auch wenn es nicht zu 100 % bestanden wurde.

So kannst du deine Testergebnisse senden und deine Smart-Home-Aktion zertifizieren:

  1. Nachdem du die Testergebnisse erhalten hast und bereit bist, deine Smart-Home-Aktion zu zertifizieren, klicke im Test Suite-Tool auf Senden.
  2. Klicken Sie auf die Schaltfläche Testergebnisse herunterladen, um die Testergebnisse abzurufen.
  3. Klicken Sie auf SENDEN, um die Testergebnisse an Google zu senden.
  4. Füllen Sie alle Pflichtfelder aus und klicken Sie dann auf Senden.