Da cloud a cloud SDK della casa locale
Il Google Home Test Suite è un'applicazione web che ti consente di eseguire autonomamente i test della tua azione per la smart home. The Test Suite genera ed esegue automaticamente i casi di test in base ai dispositivi e ai tratti 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 per maggiori informazioni. Questa versione di Test Suite è pensata specificamente per lo sviluppo e la garanzia di qualità.
I test eseguiti da Test Suite includono, a titolo esemplificativo:
Controlli 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 ai risultati di Report State.
Puoi avviare lo strumento Test Suite facendo clic sul pulsante di seguito:
Eseguire autonomamente i test dell'azione
La sezione seguente descrive come eseguire Test Suite su dispositivo e sul progetto di azione per la smart home. Test Suite richiede l'accesso per poter esaminare i dispositivi in Google Home Graph e inviare comandi direttamente a Google Assistant.
Per eseguire autonomamente i test dell'azione:
- Apri Test Suite nel browser web.
Accedi a Google utilizzando il pulsante in alto a destra.
Configura i dettagli del 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 stai certificando la tua integrazione Cloud-to-cloud, lascia invariato il valore predefinito Timeout di Report State/Request Sync. Tuttavia, per i test, puoi modificare il valore di timeout se l'agente impiega più tempo per segnalare lo stato a Home Graph.
Se stai certificando l'integrazione Cloud-to-cloud, assicurati che l'opzione Test Request Sync sia abilitata. Durante i test, ti verrà chiesto di aggiungere, aggiornare o rimuovere un dispositivo e di verificare se l'elenco dei dispositivi è cambiato in Home Graph. Le azioni di modifica vengono eseguite 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 Test del tratto Scena.
Se stai eseguendo la suite di test per i dispositivi per la casa locale, seleziona Supporta l'SDK della casa locale.
- Seleziona Completamento locale o Configurazione senza interruzioni.
- Fai clic su Supporta la query locale se il dispositivo è in grado di gestire l'intent QUERY localmente.
Esegui un test e visualizza i risultati:
- Fai clic su Avanti per avviare i test. L'interfaccia mostra i dispositivi e i tratti in fase di test.
Visualizza la pagina Risultati e invio:
- Al termine dei test, fai clic su Avanti per visualizzare i risultati.
I risultati dei 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 dell'account svolge un ruolo importante nell'ecosistema della smart home di Google. Il test di convalida del collegamento dell'account in Test Suite controlla il tuo servizio OAuth per verificare la presenza di 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 che vengano restituiti con un token di aggiornamento valido.
| Elementi di test | Spiegazione |
|---|---|
| Controlla 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.
|
| Controlla se il token di accesso scaduto ha un token di aggiornamento. | È necessario fornire un token di aggiornamento quando il token di accesso è scaduto. Questo test non verrà superato se non viene trovato alcun token di aggiornamento. |
Test di convalida del token di aggiornamento
I token di aggiornamento vengono testati per assicurarsi 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 Richiesta non valida con
{"error": "invalid_grant"} a una richiesta di token di aggiornamento non valida.
Se la risposta non corrisponde al "codice o messaggio di errore", questo caso di test
non verrà superato. Per maggiori informazioni, visita
exchange refresh tokens for access tokens. |
| 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, il caso di test non verrà superato. |
| Controlla se il token di accesso non scaduto è ancora valido. | Verrà visualizzata la data 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 condizioni di competizione che potrebbero interrompere il collegamento dell'account di un utente. Il test non verrà superato se invalidi il vecchio token di aggiornamento prima che venga utilizzato il nuovo. |
Messaggi di errore
La seguente tabella elenca alcuni messaggi di errore comuni che potresti riscontrare e il modo consigliato per risolverli.
| Messaggio di errore | Come risolvere |
|---|---|
| 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 agentUserId sia valido e collegato al tuo
servizio. |
Assicurati di disporre dell'autorizzazione Errore durante il recupero dei dati del modulo: errore getModuleData: Http failure response for https://hometestsuiteproxy-pa.googleapis.com/v1/module:get: 403 OK 403 |
|
Inviare i risultati dei test
I risultati di Test Suite devono superare il 100% dei test prima di essere inviati per la certificazione. Se hai tratti che richiedono test manuali, devi comunque eseguire lo strumento Test Suite e allegare il risultato anche se non ha superato il 100%.
Per inviare i risultati dei test e certificare l'Cloud-to-cloud integrazione:
- Dopo aver ricevuto i risultati dei test e quando sei pronto per certificare l'integrazione 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' Test Suite ID dei risultati.
Compila tutti i campi obbligatori, quindi fai clic su Invia.