Da cloud a cloud Local Home SDK
Google Home Test Suite è un'applicazione web che ti consente di eseguire l'autotest della tua Azione per la smart home. Test Suite genera ed esegue automaticamente scenari di test in base ai dispositivi e alle caratteristiche associati al tuo account. Al termine dei test, puoi visualizzare i risultati.
Per utilizzare Test Suite e inviare i risultati dei test a Google per la certificazione, consulta la pagina Testare e condividere le Azioni per la smart home. Questa versione di Test Suite è pensata appositamente per lo sviluppo e la garanzia di qualità.
I test eseguiti da Test Suite includono, a titolo esemplificativo:
Verifica che Report State e Request Sync siano implementati per i tuoi dispositivi e tratti.
Verifica che l'intent QUERY sia implementato per il tuo dispositivo e che i risultati corrispondano a quelli di Report State.
Puoi avviare lo strumento Test Suite facendo clic sul pulsante di seguito:
Eseguire l'autotest dell'azione
La sezione seguente descrive come eseguire Test Suite sul tuo dispositivo e sul progetto Azione per la smart home. Test Suite richiede l'accesso per poter ispezionare i dispositivi nel tuo Google Home Graph e inviare comandi direttamente a Google Assistant.
Per eseguire l'autotest dell'azione:
- Nel browser web, apri Test Suite.
Accedi a Google utilizzando il pulsante nell'angolo in alto a destra.
Configura i Dettagli progetto:
- Nel campo ID progetto, inserisci l'identificatore del progetto per la tua Azione per la smart home.
- Fai clic su Avanti.
Configura le impostazioni di test:
- Se certifichi l'integrazione di Cloud-to-cloud, lascia invariato il valore predefinito di Report State/Request Sync Timeout. Tuttavia, per i test, puoi modificare il valore di timeout se l'agente impiega più tempo per comunicare lo stato a Home Graph.
Se certifichi l'integrazione di Cloud-to-cloud, assicurati che l'opzione Sincronizzazione richiesta di test sia attivata. Durante il test, ti verrà chiesto di aggiungere, aggiornare o rimuovere un dispositivo e controllare se l'elenco dei dispositivi è cambiato in Home Graph. Le modifiche vengono apportate tramite l'integrazione che stai testando. L'integrazione in fase di test deve sempre avere almeno un dispositivo collegato all'utente agente.
Se utilizzi un tratto Scene, seleziona Testa tratto Scena.
Se esegui la suite di test per i dispositivi Local Home, seleziona Supporta l'SDK della casa locale.
- Seleziona Evasione locale o Configurazione semplice.
- Fai clic su Supporta query locale se il dispositivo può gestire l'intent QUERY localmente.
Esegui un Test Run e visualizza i risultati:
- Fai clic su Avanti per iniziare a eseguire i test. L'interfaccia mostra i dispositivi e le caratteristiche in fase di test.
Visualizza la pagina Risultati e invio:
- Al termine dei test, fai clic su Avanti per visualizzare i risultati.
I risultati del test includono il numero di test superati e non superati e un punteggio finale che indica la percentuale di test superati.
Test di convalida del collegamento dell'account
Il collegamento degli account svolge un ruolo importante nell'ecosistema della smart home Google. Il test di convalida del collegamento dell'account in Test Suite controlla il tuo servizio OAuth per potenziali problemi.
Il test di convalida del collegamento dell'account contiene test per convalidare i token di accesso e i token di aggiornamento:
Test di convalida del token di accesso
I token di accesso restituiti dall'endpoint di scambio dei token vengono testati per assicurarsi che abbiano un formato valido e vengano restituiti con un token di aggiornamento valido.
Elementi di test | Spiegazione |
---|---|
Verificare se il token di accesso è in formato JWT | Il collegamento dell'Account Google non consiglia i token di accesso in formato JWT. Se viene trovato un formato JWT, viene visualizzato il seguente avviso:
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.
|
Verifica che il token di accesso scadibile abbia un token di aggiornamento. | Un token di aggiornamento deve essere fornito quando il token di accesso è scaduto. Questo test non andrà a buon fine se non viene trovato alcun token di aggiornamento. |
Test di convalida del token di aggiornamento
I token di aggiornamento vengono testati per garantire che l'endpoint di scambio dei token li scambi correttamente con nuovi token di accesso.
Elementi di test | Spiegazione |
---|---|
Token di aggiornamento con token di aggiornamento non valido, controllo della risposta del partner. | Il server deve restituire un errore HTTP 400 Bad Request con
{"error": "invalid_grant"} a una richiesta di token di aggiornamento non valido.
Se la risposta non corrisponde al "codice o messaggio di errore", questo caso di test
non andrà a buon fine. Per maggiori informazioni, visita la pagina
Scambiare token di aggiornamento con token di accesso. |
Verifica se il token di accesso è stato aggiornato dopo l'aggiornamento del token. | I nuovi token di accesso devono essere restituiti in risposta alle richieste di token di aggiornamento. Se il server fornisce lo stesso token di accesso, lo scenario di test non andrà a buon fine. |
Verifica che il token di accesso non scaduto sia ancora valido. | Verrà visualizzato il tempo di scadenza del token di accesso. |
Controlla se il token di aggiornamento è stato ruotato durante l'aggiornamento. | Controlliamo se i token di aggiornamento vengono modificati dopo una richiesta di token di aggiornamento. Se il token di aggiornamento cambia, il server deve invalidare un vecchio token di aggiornamento solo dopo che è stato utilizzato un nuovo token di aggiornamento, per evitare race condition che potrebbero interrompere il collegamento dell'account di un utente. Il test non andrà a buon fine se invalidi il vecchio token di aggiornamento prima che venga utilizzato quello nuovo. |
Messaggi di errore
La seguente tabella elenca alcuni messaggi di errore comuni che potresti riscontrare e il modo suggerito per risolverli.
Messaggio di errore | Come risolvere il problema |
---|---|
L'API HomeGraph non è stata utilizzata in precedenza nel progetto <_id_> o è disabilitata. | Assicurati di aver abilitato l'API HomeGraph. |
Entità richiesta non trovata | Verifica che il tuo agentUserId sia valido e collegato al tuo
servizio. |
Assicurati di disporre dell'autorizzazione Errore durante il recupero dei dati del modulo: getModuleData error: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403 |
|
Inviare i risultati del test
I risultati di Test Suite devono superare il 100% dei test prima di poter essere inviati per la certificazione. Se hai caratteristiche che richiedono test manuali, devi comunque eseguire lo strumento Test Suite e allegare il risultato anche se non è stato superato al 100%.
Per inviare i risultati del test e certificare l'integrazione di Cloud-to-cloud, segui questi passaggi:
- Dopo aver ricevuto i risultati del test e quando sei pronto a certificare l'integrazione di Cloud-to-cloud, fai clic su Invia nello strumento Test Suite.
- Vai a Google Home Developer Console > Cloud-to-cloud > Certifica.
- Seleziona l'integrazione che vuoi certificare.
- In Documentazione, inserisci l'ID risultati Test Suite.
Compila tutti i campi obbligatori, quindi fai clic su Invia.