Suite Google Home Test

Cloud à cloud    SDK Local Home

Google Home Test Suite est une application Web qui vous permet de tester vous-même votre action de maison connectée. Test Suite génère et exécute automatiquement des scénarios de test en fonction des appareils et des caractéristiques associés à votre compte. Une fois les tests terminés, vous pouvez afficher leurs résultats ou remplir le formulaire d'envoi pour les envoyer à Google.

Les tests exécutés par Test Suite incluent, sans s'y limiter, les tests suivants:

  • Vérifiez que Report State (État du rapport) et la synchronisation des requêtes sont implémentés pour vos appareils et vos caractéristiques.

  • Vérifie que l'intent QUERY est implémenté pour votre appareil et que ses résultats correspondent aux résultats "Report State" (Rapport sur l'état).

Vous pouvez lancer l'outil Test Suite en cliquant sur le bouton ci-dessous:

Lancer Test Suite

Testez votre action par vous-même

La section suivante explique comment exécuter Test Suite sur votre appareil et dans le projet d'action de votre maison connectée. Vous devez vous connecter à Test Suite pour pouvoir inspecter les appareils de votre Google Home Graph et envoyer des commandes directement à Google Assistant.

Pour tester vous-même votre action, procédez comme suit:

  1. Dans votre navigateur Web, ouvrez Test Suite.
  2. Connectez-vous à Google à l'aide du bouton situé dans l'angle supérieur droit.

  3. Configurez les détails du projet:

    1. Dans le champ ID du projet, saisissez l'identifiant du projet associé à votre action de maison connectée.
    2. Cliquez sur Suivant.
  4. Configurez les paramètres de test:

    1. Si vous certifiez votre action de maison connectée, conservez la valeur par défaut Report State/Request Sync Timeout (État du rapport/Délai avant expiration de la requête de synchronisation). Toutefois, pour les tests, vous pouvez modifier la valeur du délai avant expiration si votre agent prend plus de temps pour indiquer l'état à Home Graph.
    2. Si vous certifiez votre action de maison connectée, assurez-vous que l'option Test Request Sync (Synchronisation des requêtes de test) est activée. Lors des tests, vous serez invité à ajouter, mettre à jour ou supprimer un appareil et vérifier si la liste des appareils a changé dans Home Graph. Les actions de modification ont lieu via l'intégration que vous testez. L'intégration testée doit toujours comporter au moins un appareil associé à l'utilisateur de l'agent.

    3. Si vous utilisez une caractéristique Scene, sélectionnez Tester la caractéristique de scène.

    4. Si vous exécutez la suite de tests pour les appareils Local Home, sélectionnez Compatible avec le SDK Local Home.

      1. Sélectionnez Traitement en local ou Configuration aisée.
      2. Cliquez sur Compatible avec les requêtes locales si l'appareil peut gérer l'intent QUERY en local.
  5. Effectuez un test et affichez les résultats:

    1. Cliquez sur Suivant pour commencer à exécuter des tests. L'interface affiche les appareils et les caractéristiques testés.
  6. Accédez à la page Résultats et envoi:

    1. Une fois les tests terminés, cliquez sur Suivant pour afficher les résultats.

Les résultats des tests incluent le nombre de tests réussis et échoués, ainsi qu'un score final indiquant le pourcentage de réussites.

Test de validation de l'association des comptes

L'association de comptes joue un rôle important dans l'écosystème de la maison connectée de Google. Le test de validation de l'association de comptes dans Test Suite vérifie si votre service OAuth présente des problèmes potentiels.

Le test de validation d'association de comptes contient des tests permettant de valider les jetons d'accès et les jetons d'actualisation:

Test de validation du jeton d'accès

Les jetons d'accès renvoyés par votre point de terminaison d'échange de jetons sont testés pour s'assurer qu'ils ont un format valide et sont renvoyés avec un jeton d'actualisation valide.

Éléments test Explication
Vérifier si le jeton d'accès est au format JWT L'association de comptes Google ne recommande pas les jetons d'accès au format JWT. Si un format JWT est trouvé, l'avertissement suivant s'affiche : 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.
Vérifiez que le jeton d'accès pouvant expirer est associé à un jeton d'actualisation. Un jeton d'actualisation doit être fourni lorsque le jeton d'accès expire. Ce test échouera si aucun jeton d'actualisation n'est trouvé.

Actualiser le test de validation du jeton

Les jetons d'actualisation sont testés pour garantir que votre point de terminaison d'échange de jetons les échange correctement contre de nouveaux jetons d'accès.

Éléments test Explication
Jeton d'actualisation dont le jeton n'est pas valide, vérification de la réponse du partenaire. Votre serveur doit renvoyer une erreur HTTP 400 Bad Request avec {"error": "invalid_grant"} à une requête de jeton d'actualisation non valide. Si la réponse ne correspond pas au "code ou message d'erreur", ce scénario de test échoue. Pour en savoir plus, consultez Échanger des jetons d'actualisation contre des jetons d'accès.
Vérifiez si le jeton d'accès a été mis à jour après son actualisation. De nouveaux jetons d'accès doivent être renvoyés en réponse aux requêtes d'actualisation de jetons. Si votre serveur fournit le même jeton d'accès, le scénario de test échouera.
Vérifiez si le jeton d'accès non expiré est toujours valide. Le délai d'expiration du jeton d'accès s'affiche.
Vérifiez si le jeton d'actualisation a été alterné lors de l'actualisation. Nous vérifions si les jetons d'actualisation sont modifiés après une requête de jeton d'actualisation. Si le jeton d'actualisation change, votre serveur ne doit invalider un ancien jeton d'actualisation qu'après l'utilisation d'un nouveau jeton, afin d'éviter que des conditions de concurrence puissent rompre l'association du compte d'un utilisateur. Le test échouera si vous invalidez l'ancien jeton d'actualisation avant que le nouveau soit utilisé.

Messages d'erreur

Le tableau suivant répertorie certains messages d'erreur courants que vous pouvez rencontrer et la manière de les résoudre.

Message d'erreur Résoudre le problème
L'API HomeGraph n'a jamais été utilisée dans le projet <_id_> ou a été désactivée Assurez-vous d'avoir activé l'API HomeGraph.
L'entité demandée est introuvable. Vérifiez que votre agentUserId est valide et associé à votre service.

Assurez-vous de disposer de l'autorisation resourcemanager.projects.get sur le projet ${your project id} et d'avoir accordé toutes les autorisations dans l'écran d'autorisation.

Erreur de récupération des données du module: erreur getModuleData: réponse d'échec HTTP pour https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Suivez les instructions de la section Résoudre les problèmes liés aux autorisations IAM pour vous assurer que votre compte dispose des autorisations resourcemanager.projects.get pour le projet.
  2. Accédez à la page Applications ayant accès à votre compte afin de vérifier les autorisations suivantes pour "Suite de tests pour la maison connectée" :
    • Informations de base du compte
      1. Afficher l'adresse e-mail principale associée à votre compte Google
      2. Consulter vos informations personnelles, y compris celles que vous avez rendues publiques
    • Accès supplémentaire
      1. Utilisez votre Assistant: accès étendu à votre compte Google
      2. Inspecter et contrôler les appareils connectés dans votre Home Graph
    Si vous obtenez une erreur d'autorisation, supprimez d'abord l'accès, puis accordez toutes les autorisations dans l'écran d'autorisation lorsque vous vous reconnectez.

Envoyer les résultats du test

Vos résultats Test Suite doivent réussir tous les tests avant d'envoyer le formulaire de certification. Si certaines caractéristiques nécessitent un test manuel, vous devez toujours exécuter l'outil Test Suite et joindre le résultat même s'il n'a pas réussi à 100%.

Pour envoyer les résultats des tests et certifier votre action de maison connectée, procédez comme suit:

  1. Une fois que vous avez reçu les résultats du test et que vous êtes prêt à certifier votre action de maison connectée, cliquez sur Submit (Envoyer) dans l'outil Test Suite.
  2. Cliquez sur le bouton TÉLÉCHARGER LES RÉSULTATS DU TEST pour récupérer les résultats.
  3. Cliquez sur ACCÉDER AU FORMULAIRE D'ENVOI pour envoyer les résultats du test à Google.
  4. Renseignez tous les champs obligatoires, puis cliquez sur Envoyer.