A differenza di altri tipi di app Android, un'app Home APIs presenta considerazioni e sfide uniche, tra cui dipendenze da dispositivi per la smart home fisici, affidabilità della rete, sicurezza e privacy e interoperabilità di dispositivi e protocolli. Queste differenze hanno un impatto sui test.
Configurare l'ambiente di test
Un ambiente di test solido è fondamentale per testare un'app Home APIs.
È una buona strategia isolare i dispositivi di test Home API su una rete Wi-Fi dedicata. In questo modo si evitano interferenze da altri dispositivi e si possono simulare diverse condizioni di rete, ad esempio la limitazione della larghezza di banda.
Ti consigliamo di eseguire i test utilizzando una varietà di tipi di dispositivi per la smart home di diversi produttori. Assicurati di eseguire i test con dispositivi fisici reali. I dispositivi virtuali e gli emulatori hanno la loro utilità, ma non dovrebbero essere utilizzati esclusivamente.
Allo stesso modo, testare l'app con una varietà di dispositivi Android di più produttori, con dimensioni dello schermo diverse e con versioni di Android diverse, aiuta a verificare una compatibilità più ampia.
Assemblare gli strumenti
I seguenti strumenti sono utili per testare un'app Home APIs:
| Strumento | Descrizione |
|---|---|
| Google Home Plugin for Android Studio | Fornisce l'accesso a Google Assistant Simulator, Home Graph Viewer, Google Cloud Logging, e al visualizzatore dei log di Android Debug Bridge (adb) Log viewer. |
| Google Home Playground | Non è un sostituto dei test con dispositivi fisici reali, ma prezioso per molti scenari di test. |
| Matter Virtual Device (MVD) | Un'altra app di emulazione che può essere utile per i test con Matter dispositivi in un'app Home APIs. |
| Espresso | Consente di automatizzare i test dell'interfaccia utente. Devi simulare l'API sottostante per simulare le interazioni hardware. |
| Un emulatore di rete | Consente di simulare diverse condizioni di rete e risposte API, il che è particolarmente utile se la tua Home API utilizza un backend cloud. |
| Logcat di Android Studio | Gestisce e analizza i dati di log. |
Applicare approcci e strategie di test diversi
Dovresti applicare una varietà di approcci di test alla tua app Home APIs. Per informazioni generali sui diversi metodi, consulta Testare le app su Android. Oltre ai test di esperienza utente e sicurezza che tutte le app Android devono superare, alcune aree di test sono particolarmente pertinenti per le app Home APIs e sono evidenziate in modo più dettagliato nelle sezioni seguenti.
Test funzionali
A seconda delle funzionalità della tua app, potresti prestare particolare attenzione ad alcune delle seguenti aree:
- Rilevamento e accoppiamento dei dispositivi, inclusi la configurazione iniziale e l'accoppiamento con i nuovi dispositivi, il rilevamento di nuovo dei dispositivi esistenti dopo i riavvii dell'app, i riavvii dei dispositivi o le modifiche alla rete. Controlla anche scenari come dispositivi che non rispondono o un utente che inserisce credenziali errate.
- Sincronizzazione dello stato, assicurandoti che l'app si aggiorni per riflettere accuratamente lo stato attuale in modo tempestivo.
- Come vengono gestite e applicate le autorizzazioni, soprattutto se l'app supporta più utenti o l'accesso alla casa condivisa. È inclusa la verifica che l'app gestisca correttamente le autorizzazioni revocate.
- Se l'app supporta le scene, ad esempio una scena "Buonanotte" che spegne tutte le luci, testa la creazione, la modifica e l'esecuzione delle scene. Testa le automazioni, inclusi i comandi iniziali e le azioni.
Test delle prestazioni
Verifica che l'app risponda e non introduca latenza non necessaria. Se possibile, esegui i test con un numero elevato di dispositivi per valutare la scalabilità e le prestazioni dell'app sotto carico. Esamina anche il consumo di CPU, memoria e batteria dell'app, soprattutto durante la comunicazione attiva del dispositivo, per verificare se l'utilizzo delle risorse è ragionevole.
Test di affidabilità e stabilità
A causa della loro dipendenza dalla connettività di rete, le app Home APIs devono essere testate in base ai seguenti scenari:
- Fluttuazione della rete
- Simula interruzioni del Wi-Fi, segnali deboli e cambio di rete.
- Verifica che l'app gestisca correttamente le disconnessioni e le riconnessioni.
- Verifica che i comandi vengano messi in coda ed eseguiti quando la connettività viene ripristinata o fornisci messaggi di errore appropriati.
- Testa l'app da reti remote, non solo dalla rete di casa.
- Disconnessione del dispositivo
- Scollega fisicamente i dispositivi.
- Spegni e riaccendi i dispositivi.
- Operazioni simultanee
- Invia una sequenza rapida di comandi.
- Fai in modo che più utenti tentino di controllare lo stesso dispositivo contemporaneamente.
- Testa scene e automazioni sovrapposte.
- Gestione degli errori
- Forza gli errori dell'API, ad esempio simulando le risposte del server dell'API cloud.
- Testa l'input non valido dell'utente.
- Verifica la riduzione controllata e i messaggi di errore informativi.
- Affidabilità : esegui l'app e i dispositivi connessi per periodi prolungati per scoprire possibili perdite di memoria o problemi di stabilità.
Prima di lanciare l'app
Prima del lancio, ti consigliamo di testare attentamente un'app che utilizza le Home APIs per verificare che soddisfi tutti i requisiti funzionali e di qualità. Utilizza il report di test dell'app Google Home APIs come guida per testare la funzionalità dell'app.
Se ti viene richiesto di inviare il report di test dell'app Google Home APIs, invia il report al tuo Google Technical Account Manager (TAM) in modo che possa esaminare il report e utilizzarlo come riferimento durante il test dell'app.