Pacote de testes do Google Home

O Google Home Test Suite é um aplicativo da Web que permite fazer o autoteste da sua ação de casa inteligente. O Test Suite gera e executa automaticamente casos de teste com base nos dispositivos e nas características associadas à sua conta. Quando você concluir os testes, poderá conferir os resultados.

Para usar o Test Suite e enviar os resultados dos testes ao Google para certificação, consulte a página Testar e compartilhar ações da casa inteligente para mais informações. Essa versão do Test Suite é específica para desenvolvimento e garantia de qualidade.

Os testes executados pelo Test Suite incluem, entre outros:

  • Verifica se o Report State e a Request Sync estão implementados para seus dispositivos e atributos.

  • Verifica se a intent QUERY está implementada para o dispositivo e se os resultados dela correspondem aos resultados do estado do relatório.

Para iniciar a ferramenta Test Suite, clique no botão abaixo:

Iniciar Test Suite

Autotestar sua Ação

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

Para fazer o autoteste da sua Ação, siga estas etapas:

  1. No navegador da Web, abra o Test 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 da sua ação de casa inteligente.
    2. Clique em Próxima.
  4. Defina as Configurações de teste:

    1. Se você estiver certificando a integração da Cloud-to-cloud, não altere o valor padrão Report State/Request Sync Timeout. No entanto, para testes, você pode mudar o valor do tempo limite se o agente levar mais tempo para informar o estado ao Home Graph.
    2. Se você estiver certificando a integração do Cloud-to-cloud, verifique se a opção Test Request Sync está ativada. Durante o teste, você vai receber uma solicitação para adicionar, atualizar ou remover um dispositivo e verificar se a lista de dispositivos mudou no gráfico de casa. As ações de mudança ocorrem pela integração que você está testando. A integração em teste precisa ter pelo menos um dispositivo associado ao usuário do agente.

    3. Se você estiver usando um atributo Scene, selecione Atributo de cena de teste.

    4. Se você estiver executando o pacote de teste para dispositivos do Local Home, selecione Suporta o SDK do Local Home.

      1. Selecione Fulfillment local ou Configuração integrada.
      2. Clique em Suporta consulta local se o dispositivo puder processar a intent QUERY localmente.
  5. Faça uma execução de teste 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 testadas.
  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 do teste incluem o número de testes aprovados e reprovados e 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 desempenha 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á possíveis problemas no seu serviço OAuth.

O teste de validação da vinculação de conta contém testes para validar tokens de acesso e tokens de atualização:

Teste de validação do token de acesso

Os tokens de acesso retornados do endpoint de troca de token 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 tokens de acesso no formato JWT. Se um formato JWT for encontrado, o aviso a seguir 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 com expiração tem um token de atualização. Um token de atualização precisa ser fornecido quando o token de acesso for expirado. O 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 o endpoint de troca de tokens os troque corretamente por novos tokens de acesso.

Itens de teste Explicação
Token de atualização com token de atualização inválido, verificando a resposta do parceiro. Seu servidor precisa retornar um erro HTTP 400 Bad Request com {"error": "invalid_grant"} para uma solicitação de token de atualização inválido. Se a resposta não corresponder ao "código ou mensagem de erro", esse caso de teste vai falhar. Acesse trocar tokens de atualização por tokens de acesso para 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 atualização de token. Se o servidor fornecer o mesmo token de acesso, o caso de teste vai 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 alternado 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, o servidor só vai invalidar um token de atualização antiga depois que um novo token de atualização tiver sido usado, para evitar condições de corrida que possam 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 solução sugerida.

Mensagem de erro Como resolver
A API HomeGraph não foi usada no projeto <_id_> antes 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 serviço.

Verifique se você tem a permissão resourcemanager.projects.get no projeto ${your project id} e se concedeu todas as permissões na tela de consentimento.

Erro ao buscar dados do módulo: getModuleData error: resposta de falha do Http para https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Siga as instruções em Resolver problemas com as permissões do IAM para garantir que sua conta tenha as permissões resourcemanager.projects.get do projeto.
  2. Acesse a página Apps com acesso à sua conta para verificar as seguintes permissões para "Test suite for smart home":
    • Informações básicas da conta
      1. Ver o endereço de e-mail principal da sua Conta do Google
      2. Conferir 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 quando fizer login novamente.

Enviar resultados de testes

Seus resultados de Test Suite precisam ser aprovados em 100% dos testes antes de enviar o formulário de certificação. Se você tiver características que exigem testes manuais, ainda será necessário executar a ferramenta Test Suite e anexar o resultado, mesmo que ele não tenha sido aprovado em 100%.

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

  1. Depois de receber os resultados do teste e estar pronto para certificar a integração Cloud-to-cloud, clique em Enviar na ferramenta Test Suite.
  2. Clique no botão DOWNLOAD TEST RESULTS (FAZER O DOWNLOAD DOS RESULTADOS DO TESTE) para acessar os resultados do teste.
  3. Clique em GO TO SUBMISSION FORM para enviar os resultados do teste ao Google.
  4. Preencha todos os campos obrigatórios e clique em Enviar.