Suite Google Home Test

Cloud-to-cloud    SDK Local Home

Google Home Test Suite est une application Web qui vous permet de tester automatiquement 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 en consulter les 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 éléments suivants:

  • Vérifie que l'é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 à ceux de Report State.

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

Lancer Test Suite

Autotestez votre action

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

Pour tester automatiquement 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 de projet de votre action de maison connectée.
    2. Cliquez sur Suivant.
  4. Configurez les Test Settings (Paramètres de test) :

    1. Si vous certifiez votre action de maison connectée, ne modifiez pas la valeur par défaut Report State/Request Sync Timeout (État du rapport/Délai de synchronisation des requêtes). Toutefois, à des fins de test, vous pouvez modifier la valeur du délai avant expiration si votre agent prend plus de temps pour signaler l'état à Home Graph.
    2. Si vous certifiez votre action pour la maison connectée, assurez-vous que l'option Test Request Sync est activée. Pendant les 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. Votre intégration en cours de test doit toujours comporter au moins un appareil connecté à l'utilisateur de l'agent.

    3. Si vous utilisez un trait Scene, sélectionnez Test Scene trait (Tester le trait 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 magasin ou Configuration aisée.
      2. Cliquez sur Accepte les requêtes locales si l'appareil peut gérer l'intent QUERY localement.
  5. Effectuez un test Run (Exécuter 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 qui sont testés.
  6. Afficher la page Résultats et soumissions:

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

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

Test de validation de l'association de 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 permet d'identifier d'éventuels problèmes dans votre service OAuth.

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 le point de terminaison de votre é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.

Articles de 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 détecté, 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 expirable possède un jeton d'actualisation. Un jeton d'actualisation doit être fourni lorsque le jeton d'accès a expiré. Ce test échoue si aucun jeton d'actualisation n'est trouvé.

Actualiser le test de validation du jeton

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

Articles de test Explication
Jeton d'actualisation avec jeton d'actualisation non 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 à "code ou message d'erreur", ce scénario de test échouera. Pour en savoir plus, consultez la page É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 l'actualisation du jeton. De nouveaux jetons d'accès doivent être renvoyés en réponse aux requêtes de jetons d'actualisation. 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 n'a pas expiré. 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 que lorsqu'un nouveau jeton a été utilisé, afin d'éviter les conditions de concurrence susceptibles de rompre l'association des comptes d'un utilisateur. Le test échoue si vous invalidez l'ancien jeton d'actualisation avant que le nouveau ne soit utilisé.

Messages d'erreur

Le tableau suivant répertorie certains messages d'erreur courants que vous pouvez rencontrer, ainsi que la méthode suggérée pour 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 est désactivée Assurez-vous d'avoir activé l'API HomeGraph.
Entité demandée introuvable Vérifiez que votre agentUserId est valide et qu'il est 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 sur l'écran de consentement.

Erreur lors de l'obtention 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 pour 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 pour la maison connectée dans le graphique de la maison
    Si vous obtenez une erreur d'autorisation, supprimez d'abord l'accès, puis accordez toutes les autorisations sur 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 votre formulaire de certification. Si certaines de vos 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 atteint 100%.

Pour envoyer vos résultats de test et certifier votre action de maison connectée, procédez comme suit:

  1. Une fois que vous avez reçu les résultats de vos tests et que vous êtes prêt à certifier votre action pour la 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. Remplissez tous les champs obligatoires, puis cliquez sur Envoyer.