Pacote de testes do Google Home

Nuvem para nuvem    SDK Local Home

O Google Home Test Suite é um aplicativo web que permite que você teste sua casa inteligente por conta própria. O Test Suite gera e executa automaticamente casos de teste com base nos dispositivos e características associados à sua conta. Ao concluir os testes, você poderá visualizar os resultados.

Para usar o Test Suite e enviar os resultados dos seus testes ao Google para certificação, consulte a página Ações de teste e compartilhamento de casa inteligente para obter informações. Esta versão do Test Suite é especificamente para desenvolvimento e garantia de qualidade.

Os testes executados pelo Test Suite incluem, mas não se limitam a, os seguintes:

  • Verifica se Report State e Request Sync estão implementados para seus dispositivos e características.

  • Verifica se a intenção QUERY está implementada para o seu dispositivo e se os seus resultados correspondem aos resultados do Relatório de Estado.

Você pode iniciar a ferramenta Test Suite clicando no botão abaixo:

LançarTest Suite

Faça um autoteste da sua ação

A seção a seguir descreve como executar o Test Suite no seu dispositivo e projeto de ação de casa inteligente. O Test Suite requer que você faça login para que ele possa inspecionar dispositivos em seu Google Home Graph e enviar comandos diretamente para Google Assistant.

Para testar sua ação, siga estes passos:

  1. No seu navegador web, abra oTest Suite.
  2. Faça login no Google usando o botão no canto superior direito.

  3. Configure os detalhes do projeto :

    1. No campo ID do projeto, insira o identificador do projeto para sua ação de casa inteligente.
    2. Clique em Próxima.
  4. Configure as Configurações de teste:

    1. Se você estiver certificando sua integração do Cloud-to-cloud, deixe o valor padrão de Tempo limite de sincronização de solicitação/estado do relatório inalterado. No entanto, para testes, você pode mudar o valor de tempo limite se o agente levar mais tempo para informar o estado ao Home Graph.
    2. Se você estiver certificando sua integração do Cloud-to-cloud, verifique se a opção Test Request Sync está ativada. Durante o teste, você vai precisar adicionar, atualizar ou remover um dispositivo e verificar se a lista de dispositivos mudou no Home Graph. As ações de mudança ocorrem pela integração que você está testando. A integração em teste precisa sempre ter pelo menos um dispositivo conectado ao usuário do agente.

    3. Se você estiver usando um traço Scene, selecione Traço de cena de teste.

    4. Se você estiver executando o conjunto de testes para dispositivos do Local Home, selecione Compatível com o SDK local do Google Home.

      1. Selecione Atendimento local ou Configuração integrada.
      2. Clique em Suporta consulta local se o dispositivo puder processar a intent QUERY localmente.
  5. Faça um teste de execução e confira os resultados:

    1. Clique em Próxima para começar a executar os testes. A interface mostra os dispositivos e as características que estão sendo testados.
  6. Acesse a página Resultados e envio:

    1. Quando os testes forem concluídos, clique em Próxima para conferir os resultados.

Os resultados incluem o número de testes aprovados e reprovados, além de uma pontuação final que indica a porcentagem de aprovações.

Teste de validação da vinculação de contas

A vinculação de contas tem um papel importante no ecossistema de casa inteligente do Google. O teste de validação de vinculação de contas em Test Suite verifica se há problemas em potencial no seu serviço OAuth.

O teste de validação de vinculação de contas contém testes para validartokens de acesso etokens de atualização:

Teste de validação do token de acesso

Os tokens de acesso retornados pelo seu endpoint de troca de tokens são testados para garantir que tenham um formato válido e sejam retornados com um token de atualização válido.

Itens de teste Explicação
Verificar se o token de acesso está no formato JWT A vinculação de contas do Google não recomenda o uso de tokens de acesso no formato JWT. Se um formato JWT for encontrado, o seguinte aviso será exibido: 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.
Verifique se o token de acesso expirado possui um token de atualização. Um token de atualização precisa ser fornecido quando o token de acesso é expirável. Esse teste vai falhar se nenhum token de atualização for encontrado.

Teste de validação do token de atualização

Os tokens de atualização são testados para garantir que seu endpoint de troca de tokens os troque corretamente por novos tokens de acesso.

Itens de teste Explicação
Atualizar token com token de atualização inválido, verificando a resposta do parceiro. Seu servidor deve retornar um erro HTTP 400 Bad Request com {"error": "invalid_grant"} para uma solicitação de token de atualização inválida. Se a resposta não corresponder ao "código ou mensagem de erro", este caso de teste falhará. Visite exchange refresh tokens for access tokens para obter mais informações.
Teste se o token de acesso foi atualizado após a atualização do token. Novos tokens de acesso precisam ser retornados em resposta a solicitações de token de atualização. Se o seu servidor fornecer o mesmo token de acesso, o caso de teste falhará.
Verifique se o token de acesso não expirado ainda é válido. O tempo de expiração do token de acesso será exibido.
Verifique se o token de atualização foi girado durante a atualização. Verificamos se os tokens de atualização são alterados após uma solicitação de token de atualização. Se o token de atualização mudar, seu servidor só vai invalidar um token de atualização antigo depois que um novo for usado, para evitar condições de corrida que podem interromper a vinculação da conta de um usuário. O teste vai falhar se você invalidar o token de atualização antigo antes que o novo seja usado.

Mensagens de erro

A tabela a seguir lista algumas mensagens de erro comuns que você pode encontrar e a maneira sugerida de resolvê-las.

Mensagem de erro Como resolver
A API HomeGraph não foi usada no projeto <_id_> ou está desativada. Verifique se você ativou a API HomeGraph.
A entidade solicitada não foi encontrada Verifique se o agentUserId é válido e está vinculado ao seu serviço.

Certifique-se de ter permissão resourcemanager.projects.get no projeto ${your project id} e de ter concedido todas as permissões na tela de consentimento.

Erro ao obter dados do módulo: erro getModuleData: Falha na resposta HTTP para https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Siga as instruções em Resolver problemas de permissões do IAM para garantir que sua conta tenha as permissões resourcemanager.projects.get para o projeto.
  2. Acesse a página Apps com acesso à sua conta para verificar as seguintes permissões do "Conjunto de testes para casa inteligente":
    • Informações básicas da conta
      1. Ver o endereço de e-mail principal da sua Conta do Google
      2. Ver suas informações pessoais, inclusive aquelas que você disponibilizou publicamente
    • Acesso adicional
      1. Use o Assistant: acesso amplo à sua Conta do Google
      2. Inspecionar e controlar os dispositivos de casa inteligente no Home Graph
    Se você receber um erro de permissão, remova o acesso primeiro e conceda todas as permissões na tela de consentimento ao fazer login novamente.

Enviar resultados dos testes

Seus resultados de Test Suite precisam passar em 100% dos testes antes de serem enviados para certificação. Se você tiver alguma característica que exija teste manual, ainda assim execute a ferramenta Test Suite e anexe o resultado, mesmo que não tenha sido aprovado em 100%.

Para enviar os resultados do teste e certificar sua integração do Cloud-to-cloud, siga estas etapas:

  1. Depois de receber os resultados do teste e estiver pronto para certificar sua integração Cloud-to-cloud, clique em Enviar na ferramenta Test Suite.
  2. Acesse Google Home Developer Console > Cloud-to-cloud > Certificar.
  3. Selecione a integração que deseja certificar.
  4. Em Documentação, insira o ID dos resultados do Test Suite.
  5. Preencha todos os campos obrigatórios e clique em Enviar.