Conjunto de pruebas de Google Home

De nube a nube    SDK de Home local

Google Home Test Suite es una aplicación web que te permite autoprobar tu Acción de casa inteligente. Test Suite genera y ejecuta casos de prueba automáticamente según los dispositivos y atributos asociados con tu cuenta. Cuando completes las pruebas, podrás ver los resultados.

Para usar Test Suite y enviar los resultados de las pruebas a Google para obtener la certificación, consulta la página Cómo probar y compartir Acciones de casa inteligente. Esta versión de Test Suite es específica para el desarrollo y el control de calidad.

Las pruebas que ejecuta Test Suite incluyen, entre otras, las siguientes:

  • Verifica que Report State y Request Sync estén implementados para tus dispositivos y atributos.

  • Verifica que el intent QUERY esté implementado para tu dispositivo y que sus resultados coincidan con los resultados del estado del informe.

Para iniciar la herramienta Test Suite, haz clic en el siguiente botón:

Lanzamiento de Test Suite

Cómo autoprobar tu Acción

En la siguiente sección, se describe cómo ejecutar Test Suite en tu dispositivo y en el proyecto de Acciones de la casa inteligente. Test Suite requiere que accedas para que pueda inspeccionar los dispositivos en tu Google Home Graph y enviar comandos directamente a Google Assistant.

Para autoprobar tu Acción, sigue estos pasos:

  1. En tu navegador web, abre Test Suite.
  2. Accede a Google con el botón de la esquina superior derecha.

  3. Configura los detalles del proyecto:

    1. En el campo ID del proyecto, ingresa el identificador del proyecto de tu acción de casa inteligente.
    2. Haz clic en Siguiente.
  4. Configura la configuración de prueba:

    1. Si certificas tu integración de Cloud-to-cloud, no cambies el valor predeterminado de Report State/Request Sync Timeout. Sin embargo, para las pruebas, puedes cambiar el valor del tiempo de espera si tu agente tarda más en informar el estado al gráfico de Home.
    2. Si certificas tu integración de Cloud-to-cloud, asegúrate de que la opción Test Request Sync esté habilitada. Durante las pruebas, se te pedirá que agregues, actualices o quites un dispositivo y que verifiques si la lista de dispositivos cambió en Home Graph. Las acciones de cambio se realizan a través de la integración que estás probando. La integración en prueba siempre debe tener al menos un dispositivo conectado al usuario del agente.

    3. Si usas un atributo Scene, selecciona Test Scene trait.

    4. Si ejecutas el paquete de prueba para dispositivos Local Home, selecciona Compatible con el SDK de Local Home.

      1. Selecciona Cumplimiento local o Configuración sin problemas.
      2. Haz clic en Compatible con la consulta local si el dispositivo puede controlar el intent QUERY de forma local.
  5. Realiza una prueba de ejecución y consulta los resultados:

    1. Haz clic en Siguiente para comenzar a ejecutar pruebas. La interfaz muestra los dispositivos y los atributos que se están probando.
  6. Consulta la página Resultados y envío:

    1. Una vez que se completen las pruebas, haz clic en Siguiente para ver los resultados.

Los resultados de las pruebas incluyen la cantidad de pruebas aprobadas y no aprobadas, y una puntuación final que indica el porcentaje de pruebas aprobadas.

Prueba de validación de vinculación de cuentas

La vinculación de cuentas cumple una función importante en el ecosistema de la casa inteligente de Google. La prueba de validación de vinculación de cuentas en Test Suite verifica si hay posibles problemas en tu servicio de OAuth.

La prueba de validación de vinculación de cuentas contiene pruebas para validar los tokens de acceso y los tokens de actualización:

Prueba de validación del token de acceso

Los tokens de acceso que se muestran desde tu extremo de intercambio de tokens se prueban para garantizar que tengan un formato válido y se muestren con un token de actualización válido.

Elementos de prueba Explicación
Verifica si el token de acceso tiene formato JWT La vinculación de cuentas de Google no recomienda tokens de acceso en formato JWT. Si se encuentra un formato de JWT, se muestra la siguiente advertencia: 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.
Comprueba que el token de acceso con vencimiento tenga un token de actualización. Se debe proporcionar un token de actualización cuando el token de acceso venza. Esta prueba fallará si no se encuentra un token de actualización.

Prueba de validación del token de actualización

Los tokens de actualización se prueban para garantizar que tu extremo de intercambio de tokens los cambie correctamente por tokens de acceso nuevos.

Elementos de prueba Explicación
Token de actualización con un token de actualización no válido. Se está verificando la respuesta del socio. Tu servidor debe mostrar un error HTTP 400 de solicitud incorrecta con {"error": "invalid_grant"} a una solicitud de token de actualización no válida. Si la respuesta no coincide con el "código o mensaje de error", este caso de prueba fallará. Consulta cómo intercambiar tokens de actualización por tokens de acceso para obtener más información.
Prueba si el token de acceso se actualizó después de la actualización del token. Se deben mostrar tokens de acceso nuevos en respuesta a las solicitudes de tokens de actualización. Si tu servidor proporciona el mismo token de acceso, el caso de prueba fallará.
Verifica si el token de acceso sin vencer sigue siendo válido. Se mostrará la hora de vencimiento del token de acceso.
Comprueba si se rotó el token de actualización durante la actualización. Verificamos si los tokens de actualización cambian después de una solicitud de token de actualización. Si cambia el token de actualización, tu servidor solo debe invalidar un token de actualización anterior después de que se haya usado un token de actualización nuevo para evitar condiciones de carrera que puedan interrumpir la vinculación de la cuenta de un usuario. La prueba fallará si invalidas el token de actualización anterior antes de usar el nuevo.

Mensajes de error

En la siguiente tabla, se enumeran algunos mensajes de error comunes que puedes encontrar y la forma sugerida de resolverlos.

Mensaje de error Cómo resolver el problema
La API de HomeGraph no se usó en el proyecto <_id_> antes o está inhabilitada Asegúrate de haber habilitado la API de HomeGraph.
No se encontró la entidad solicitada Verifica que tu agentUserId sea válido y esté vinculado a tu servicio.

Asegúrate de tener el permiso resourcemanager.projects.get en el proyecto ${your project id} y de haber otorgado todos los permisos en la pantalla de consentimiento.

Error al obtener los datos del módulo: Error getModuleData: Respuesta de error HTTP para https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403

  1. Sigue las instrucciones que se indican en Cómo solucionar problemas de permisos de IAM para asegurarte de que tu cuenta tenga los permisos de resourcemanager.projects.get para el proyecto.
  2. Ve a la página Apps que pueden acceder a tu cuenta para verificar los siguientes permisos de "Test suite for smart home":
    • Información básica de la cuenta
      1. Consultar la dirección de correo electrónico principal de su Cuenta de Google
      2. Ver tu información personal, incluidos los datos personales que hayas hecho públicos
    • Acceso adicional
      1. Usa tu Assistant: Acceso ilimitado a tu Cuenta de Google
      2. Inspeccionar y controlar los dispositivos de casa inteligente de tu Home Graph
    Si recibes un error de permiso, primero quita el acceso y otorga todos los permisos en la pantalla de consentimiento cuando vuelvas a acceder.

Envía los resultados de la prueba

Tus resultados de Test Suite deben aprobar el 100% de las pruebas antes de enviar el formulario de certificación. Si tienes algún atributo que requiera pruebas manuales, debes ejecutar la herramienta Test Suite y adjuntar el resultado, incluso si no pasó el 100%.

Para enviar los resultados de la prueba y certificar tu integración de Cloud-to-cloud, sigue estos pasos:

  1. Después de recibir los resultados de la prueba y cuando tengas todo listo para certificar tu integración con Cloud-to-cloud, haz clic en Enviar en la herramienta Test Suite.
  2. Haz clic en el botón DOWNLOAD TEST RESULTS para recuperar los resultados de la prueba.
  3. Haz clic en GO TO SUBMISSION FORM para enviar los resultados de la prueba a Google.
  4. Completa todos los campos obligatorios y, luego, haz clic en Enviar.