Google Home Test Suite ist eine Webanwendung, mit der du deine Smart-Home-Aktion selbst testen kannst. Das Test Suite generiert automatisch Testläufe basierend auf den Geräten und Merkmalen, die mit deinem Konto verknüpft sind, und führt diese aus. Nach Abschluss der Tests kannst du die Testergebnisse ansehen oder das Einreichungsformular ausfüllen, um die Testergebnisse an Google zu senden.
Die von Test Suite ausgeführten Tests umfassen unter anderem die folgenden:
Prüft, ob Report State und Request Sync für Ihre Geräte und Traits implementiert sind.
Überprüft, ob der Intent QUERY für Ihr Gerät implementiert ist und dass seine Ergebnisse mit den Berichtsstatus-Ergebnissen übereinstimmen.
Klicken Sie auf die Schaltfläche unten, um das Test Suite-Tool zu starten:
Teste deine Aktion selbst
Im folgenden Abschnitt wird beschrieben, wie du die Test Suite auf deinem Gerät und deinem Smart-Home-Aktionsprojekt ausführst. Du musst dich für Test Suite anmelden, damit Geräte in deiner Google Home Graph geprüft und Befehle direkt an Google Assistant gesendet werden können.
So kannst du einen Selbsttest für deine Aktion durchführen:
- Öffnen Sie in Ihrem Webbrowser den Test Suite.
Melden Sie sich über die Schaltfläche oben rechts in Google an.
Konfigurieren Sie die Projektdetails:
- Geben Sie im Feld Project ID (Projekt-ID) die Projekt-ID für Ihre Smart-Home-Aktion ein.
- Klicken Sie auf Weiter.
Konfigurieren Sie die Testeinstellungen:
- Wenn du deine Smart-Home-Aktion zertifizieren möchtest, belasse den Standardwert für Report State/Request Sync Timeout (Status melden/Zeitüberschreitung bei Anfrage) unverändert. Sie können den Wert für die Zeitüberschreitung zu Testzwecken jedoch ändern, wenn Ihr Agent mehr Zeit benötigt, um den Status an Home Graph zu melden.
Wenn du deine Smart-Home-Aktion zertifizieren lässt, muss die Option Test Request Sync (Synchronisierung testen) aktiviert sein. Während des Tests 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. An die zu testende Integration muss immer mindestens ein Gerät mit dem Agent-Nutzer verbunden sein.
Wenn du das Merkmal Scene verwendest, wähle Trait testen aus.
Wenn du die Testsuite für Local Home-Geräte ausführst, wähle Unterstützt das Local Home SDK aus.
- Wählen Sie Lokale Auftragsausführung oder Nahtlose Einrichtung aus.
- Klicken Sie auf Unterstützt lokale Abfrage, wenn das Gerät QUERY lokal verarbeiten kann.
Führen Sie einen Testlauf durch und sehen Sie sich die Ergebnisse an:
- Klicken Sie auf Weiter, um mit dem Ausführen von Tests zu beginnen. Die Benutzeroberfläche zeigt die Geräte und Eigenschaften, die getestet werden.
So rufen Sie die Seite Ergebnisse und Einreichungen auf:
- Klicken Sie nach Abschluss der Tests auf Weiter, um die Ergebnisse aufzurufen.
Die Testergebnisse enthalten die Anzahl der bestandenen und nicht bestandenen Tests sowie eine endgültige Punktzahl, die den Prozentsatz der bestandenen Prüfungen angibt.
Validierungstest für die Kontoverknüpfung
Die Kontoverknüpfung spielt im Smart-Home-System von Google eine wichtige Rolle. Mit dem Validierungstest für die Kontoverknüpfung in Test Suite wird dein OAuth-Dienst auf mögliche Probleme geprüft.
Der Test zur Validierung der Kontoverknüpfung enthält Tests zur Validierung von Zugriffstokens und Aktualisierungstokens:
Validierungstest für Zugriffstoken
Von Ihrem Tokenaustauschendpunkt zurückgegebene Zugriffstokens 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 im JWT-Format vorliegt | Bei der Verknüpfung des Google-Kontos 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 ein ablaufendes Zugriffstoken ein Aktualisierungstoken hat. | Wenn das Zugriffstoken abläuft, muss ein Aktualisierungstoken angegeben werden. Dieser Test schlägt fehl, wenn kein Aktualisierungstoken gefunden wird. |
Validierungstest für Aktualisierungstoken
Aktualisierungstokens werden getestet, um sicherzustellen, dass Ihr Endpunkt für den Tokenaustausch sie ordnungsgemäß gegen neue Zugriffstokens tauscht.
Testartikel | Erklärung |
---|---|
Aktualisierungstoken mit ungültigem Aktualisierungstoken, Antwort des Partners wird geprüft. | Der Server sollte bei einer ungültigen Aktualisierungstokenanfrage den Fehler „HTTP 400 Bad Request“ mit {"error": "invalid_grant"} zurückgeben.
Wenn die Antwort nicht mit dem „Fehlercode oder der Fehlermeldung“ übereinstimmt, schlägt dieser Testlauf fehl. Weitere Informationen finden Sie unter
Aktualisierungstokens gegen Zugriffstokens austauschen. |
Testen Sie, ob das Zugriffstoken nach der Tokenaktualisierung aktualisiert wurde. | Neue Zugriffstokens sollten als Antwort auf Aktualisierungstoken-Anfragen zurückgegeben werden. Wenn dein Server dasselbe Zugriffstoken bereitstellt, schlägt der Testlauf fehl. |
Prüfen Sie, ob das abgelaufene 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 Aktualisierungstokens nach einer Aktualisierungstokenanfrage geändert werden. Wenn sich das Aktualisierungstoken ändert, sollte Ihr Server ein altes Aktualisierungstoken erst dann entwerten, wenn ein neues Aktualisierungstoken verwendet wurde. So lassen sich Race-Bedingungen vermeiden, die die Kontoverknüpfung eines Nutzers beeinträchtigen könnten. Der Test schlägt fehl, wenn Sie das alte Aktualisierungstoken entwerten, bevor das neue verwendet wird. |
Fehlermeldungen
Die folgende Tabelle enthält einige häufig auftretende Fehlermeldungen und die empfohlenen Lösungsmöglichkeiten.
Fehlermeldung | Lösung |
---|---|
Die HomeGraph API wurde im Projekt <_id_> noch nicht verwendet oder ist deaktiviert | Prüfen Sie, ob die HomeGraph API aktiviert ist. |
Angeforderte Entität nicht gefunden | Prüfe, ob dein agentUserId gültig und mit deinem Dienst verknüpft ist. |
Sie benötigen die Berechtigung Fehler beim Abrufen der Moduldaten: getModuleData-Fehler: HTTP-Fehlerantwort für https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403 |
|
Testergebnisse senden
Deine Test Suite-Ergebnisse müssen 100% der Tests bestehen, bevor du dein Zertifizierungsformular einreichst. Wenn Sie Merkmale haben, die manuelle Tests erfordern, sollten Sie trotzdem das Test Suite-Tool ausführen und das Ergebnis anhängen, auch wenn es nicht bei 100 % bestanden wurde.
Führe die folgenden Schritte aus, um deine Testergebnisse einzureichen und deine Smart-Home-Aktion zu zertifizieren:
- Wenn du die Testergebnisse erhalten hast und deine Smart-Home-Aktion zertifizieren möchtest, klicke im Test Suite-Tool auf Submit (Senden).
- Klicken Sie auf die Schaltfläche TESTERGEBNISSE HERUNTERLADEN, um die Testergebnisse abzurufen.
- Klicken Sie auf ZUM EINREICHENFORMULAR, um die Testergebnisse an Google zu senden.
Füllen Sie alle Pflichtfelder aus und klicken Sie dann auf Senden.