Suite Google Home Test

Le Google Home Test Suite est une application Web qui vous permet de tester vous-même votre action de maison connectée. Le Test Suite génère et exécute automatiquement des cas de test en fonction des appareils et des caractéristiques associés à votre compte. Une fois les tests terminés, vous pouvez consulter les résultats.

Pour utiliser la Test Suite et envoyer vos résultats de test à Google à des fins de certification, consultez la page Tester et partager des actions de maison connectée. Cette version de la Test Suite est spécifiquement destinée au développement et à l'assurance qualité.

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

  • Vérifie que les fonctionnalités Signaler l'état et Demander la synchronisation sont implémentées pour vos appareils et caractéristiques.

  • Vérifie que l'intent QUERY est implémenté pour votre appareil et que ses résultats correspondent à ceux de "Signaler l'état".

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

Lancer Test Suite

Tester vous-même votre action

La section suivante explique comment exécuter le Test Suite sur votre appareil et votre projet d'action de maison connectée. La Test Suite vous demande de vous connecter afin de 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 la Test Suite.
  2. Connectez-vous à Google à l'aide du bouton situé en haut à droite.

  3. Configurez les détails du projet :

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

    1. Si vous certifiez votre Cloud-to-cloud intégration, ne modifiez pas la valeur par défaut Délai d'expiration de "Signaler l'état/Demander la synchronisation". Toutefois, pour les tests, vous pouvez modifier la valeur du délai d'expiration si votre agent met plus de temps à signaler l'état à Home Graph.
    2. Si vous certifiez votre intégration Cloud-to-cloud, assurez-vous que l'option Tester la demande de synchronisation 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. Votre intégration en cours de test 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 des appareils Local Home, sélectionnez Compatible avec le SDK Local Home.

      1. Sélectionnez Traitement en local ou Configuration fluide.
      2. Cliquez sur Compatible avec la requête locale si l'appareil peut gérer l'intent QUERY en local.
  5. Exécutez un test et consultez les résultats :

    1. Cliquez sur Suivant pour lancer les tests. L'interface affiche les appareils et les caractéristiques en cours de test.
  6. Consultez 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éussite.

Test de validation de l'association de comptes

L'association de comptes joue un rôle important dans l'écosystème de maison connectée de Google. Le test de validation de l'association de comptes dans Test Suite vérifie votre service OAuth pour détecter les problèmes potentiels.

Le test de validation de l'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 qu'ils sont renvoyés avec un jeton d'actualisation valide.

Éléments 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érifier si le jeton d'accès expirant possède un jeton d'actualisation Un jeton d'actualisation doit être fourni lorsque le jeton d'accès est expirant. Ce test échouera si aucun jeton d'actualisation n'est trouvé.

Test de validation du jeton d'actualisation

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

Éléments 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 au "code ou message d'erreur", ce cas de test échouera. Pour en savoir plus, consultez la page Échanger des jetons d'actualisation contre des jetons d'accès.
Vérifier 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 jeton d'actualisation. Si votre serveur fournit le même jeton d'accès, le cas de test échouera.
Vérifier si le jeton d'accès non expiré est toujours valide Le délai d'expiration du jeton d'accès s'affiche.
Vérifier si le jeton d'actualisation a été renouvelé 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, afin d'éviter les conditions de concurrence qui pourraient interrompre l'association de comptes d'un utilisateur. Le test échouera 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 Procédure de résolution
L'API HomeGraph n'a jamais été utilisée dans le projet <_id_> ou elle 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 la 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 d'autorisations IAM pour vous assurer que votre compte dispose des resourcemanager.projects.get autorisations 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 maison connectée" :
    • Informations générales sur le compte
      1. Voir l'adresse e-mail principale de votre compte Google
      2. Vos informations personnelles, y compris celles que vous avez choisi de rendre disponibles publiquement
    • Accès supplémentaire
      1. Utiliser votre Assistant : accès étendu à votre compte Google
      2. Vérifier et contrôler les appareils connectés de votre Home Graph
    Si vous recevez une erreur d'autorisation, supprimez d'abord l'accès, puis accordez toutes les autorisations sur l'écran de consentement lorsque vous vous reconnectez.

Envoyer les résultats des tests

Vos résultats Test Suite doivent réussir 100% des tests avant d'être envoyés pour certification. Si vous avez des caractéristiques qui nécessitent des tests manuels, vous devez quand même exécuter l'outil Test Suite et joindre le résultat, même s'il n'a pas réussi à 100%.

Pour envoyer vos résultats de test et certifier votre Cloud-to-cloud intégration, 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 Cloud-to-cloud intégration, cliquez sur Envoyer dans l' Test Suite outil.
  2. Accédez à Google Home Developer Console > Cloud-to-cloud > Certifier.
  3. Sélectionnez l'intégration que vous souhaitez certifier.
  4. Sous Documentation, saisissez l'ID de vos Test Suite résultats.
  5. Remplissez tous les champs obligatoires, puis cliquez sur Envoyer.