Google Home-Test-Suite

Cloud-zu-Cloud    Local Home SDK

Google Home Test Suite ist eine Webanwendung, mit der Sie Folgendes tun können: teste dein Smart Home selbst. Das Test Suite Basierend auf den Geräten und Eigenschaften werden automatisch Testläufe generiert und durchgeführt. die mit Ihrem Konto verknüpft sind. Nach Abschluss der Tests können Sie oder füllen Sie das Einreichungsformular aus, um die Testergebnisse an Google zu senden.

Die von Test Suite ausgeführten Tests enthalten, sind aber nicht ist auf Folgendes beschränkt:

  • Prüfen Sie, ob Report State und Synchronisierungsanfragen sind implementiert für Ihr Geräte und Eigenschaften.

  • Überprüft, ob der Intent QUERY wird für Ihr Gerät implementiert und die Ergebnisse stimmen mit den Berichtsstatus-Ergebnissen überein.

Sie können das Test Suite-Tool starten, indem Sie auf die Schaltfläche unten:

Test Suite starten

Teste deine Aktion selbst

Im folgenden Abschnitt wird beschrieben, wie Sie die Test Suite auf Ihrem Gerät und in Ihrem Smart-Home-Action-Projekt ausführen. Das Test Suite müssen Sie sich anmelden, um Geräte in Ihrem Google Home Graph und senden Sie Befehle direkt an Google Assistant

So führen Sie einen Selbsttest für Ihre Aktion durch:

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

  3. Konfigurieren Sie die Projektdetails:

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

    1. Wenn du deine Smart-Home-Aktion zertifizieren möchtest, behalte die Standardeinstellung bei Der Wert für Report State / Request Sync Timeout (Status des Berichts / Zeitüberschreitung bei Anfragesynchronisierung) bleibt unverändert. Für Testen können Sie den Wert für das Zeitlimit ändern, wenn der Kundenservicemitarbeiter mehr Zeit benötigt, an Home Graph melden.
    2. Wenn du deine Smart-Home-Aktion zertifizieren lässt, achte darauf, dass die Testanfrage-Synchronisierung aktiviert ist – während des Tests werden Sie aufgefordert, ein Gerät zu aktualisieren oder zu entfernen und zu prüfen, ob sich die Geräteliste Home Graph Änderungsaktionen werden über die getestete Integration ausgeführt. Deine zu testende Integration muss immer mindestens ein Gerät haben mit dem Agent-Nutzer verknüpft ist.

    3. Wenn du die Eigenschaft Scene verwendest, wähle Trait testen.

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

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

    1. Klicken Sie auf Weiter, um mit dem Ausführen von Tests zu beginnen. Auf der Benutzeroberfläche werden die Geräte angezeigt, und Eigenschaften, die getestet werden.
  6. Sehen Sie sich die Ergebnisse und Seite zur Einreichung:

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

Die Testergebnisse umfassen die Anzahl der bestandenen und fehlgeschlagenen Tests sowie eine endgültige Punktzahl, die den Prozentsatz der Pässe angibt.

Validierungstest für die Kontoverknüpfung

Die Kontoverknüpfung spielt eine eine wichtige Rolle im Smart-Home-Ökosystem von Google. Kontoverknüpfung Validierungstest in Test Suite prüft deinen OAuth-Dienst auf mögliche Probleme.

Der Test zur Validierung der Kontoverknüpfung enthält Tests zur Validierung von Zugriffstokens. und Aktualisierungstokens:

Test zur Validierung von Zugriffstokens

Von Ihrem Tokenaustausch-Endpunkt zurückgegebene Zugriffstokens werden getestet, haben sie ein gültiges Format und werden mit einem gültigen Aktualisierungstoken zurückgegeben.

Testartikel Erklärung
Prüfen, ob das Zugriffstoken im JWT-Format ist Bei der Verknüpfung des Google-Kontos werden keine Zugriffstokens im JWT-Format empfohlen. Wenn ein Wenn das JWT-Format gefunden wurde, 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 sie von Ihrem Token-Austauschendpunkt ordnungsgemäß gegen neue Zugriffstokens eingetauscht werden.

Testelemente Erklärung
Aktualisierungstoken mit ungültigem Aktualisierungstoken, Antwort des Partners wird geprüft. Ihr Server sollte nun den Fehler „HTTP 400 Bad Request“ mit {"error": "invalid_grant"} zu einer ungültigen Anfrage für ein Aktualisierungstoken. Wenn die Antwort nicht mit dem „Fehlercode oder der Nachricht“ übereinstimmt, wird in diesem Testfall schlägt fehl. Besuche tauschen Sie Aktualisierungstokens gegen Zugriffstokens aus, um weitere Informationen zu erhalten.
Testen Sie, ob das Zugriffstoken nach der Tokenaktualisierung aktualisiert wurde. Neue Zugriffstokens sollten als Antwort auf Aktualisierungstokenanfragen zurückgegeben werden. Wenn dein Server dasselbe Zugriffstoken bereitstellt, wird der Testfall scheitern.
Prüfen Sie, ob das nicht 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 Wenn sich das Aktualisierungstoken ändert, sollte Ihr Server nur eine alte Aktualisierung ungültig machen. nach der Verwendung eines neuen Aktualisierungstokens, um Race-Bedingungen kann dies die Kontoverknüpfung beeinträchtigen. Der Test schlägt fehl, wenn Sie das alte Aktualisierungstoken ungültig machen, bevor das neue verwendet wird.

Fehlermeldungen

In der folgenden Tabelle sind einige häufige Fehlermeldungen aufgeführt. zur Problembehebung vorgeschlagen.

Fehlermeldung Lösung
Die HomeGraph API wurde im Projekt <_id_> nicht verwendet vor oder es 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 Service.

Prüfen Sie, ob Sie die Berechtigung resourcemanager.projects.get haben für Projekt ${your project id} und haben alle Berechtigungen auf dem Zustimmungsbildschirm.

Fehler beim Abrufen von Moduldaten: getModuleData-Fehler: HTTP-Fehlerantwort für https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Folgen Sie der Anleitung unter Fehlerbehebung IAM-Berechtigungen, um sicherzustellen, dass Ihr Konto über die resourcemanager.projects.get-Berechtigungen für das Projekt.
  2. Gehen Sie zur Seite Apps mit Zugriff auf mein Konto und prüfen Sie, die folgenden Berechtigungen für „Test Suite für Smart Home“:
    • Allgemeine Kontoinformationen
      1. Primäre E-Mail-Adresse für das Google-Konto abrufen
      2. Personenbezogene Daten abrufen, einschließlich aller personenbezogenen Daten, die Sie gespeichert haben öffentlich zugänglich gemacht
    • Zusätzlicher Zugriff
      1. Assistant: umfassenden Zugriff auf Ihrem Google-Konto
      2. Smart-Home-Geräte Ihres Home Graphs untersuchen und steuern
    Wenn ein Berechtigungsfehler angezeigt wird, entfernen Sie zuerst den Zugriff und gewähren dann alle Berechtigungen auf dem Zustimmungsbildschirm sehen, wenn Sie sich wieder anmelden.

Testergebnisse senden

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

So reichen Sie Ihre Testergebnisse ein und zertifizieren Ihre Smart-Home-Aktion:

  1. Nachdem Sie die Testergebnisse erhalten haben und Ihre Smart-Home-Aktion zertifizieren möchten, klicken Sie im Test Suite-Tool auf Senden.
  2. Klicken Sie auf die Schaltfläche TESTERGEBNISSE HERUNTERLADEN, um die Testergebnisse abzurufen.
  3. Klicken Sie auf ZUM EINREICHENFORMULAR, um die Testergebnisse an Google zu senden.
  4. Füllen Sie alle Pflichtfelder aus und klicken Sie dann auf Senden.