Questo documento descrive gli AVD per Test Lab, inclusi i vantaggi e le limitazioni note. Forniamo inoltre consigli su come testare l'app durante il ciclo di sviluppo. Test Lab Gli AVD sono simili agli AVD per Android Studio, ma sono ottimizzati per le prestazioni con i test sul cloud, quindi esistono alcune differenze tra i due.
Test Lab Gli AVD con suffisso .arm o (Arm) sono emulatori avanzati che offrono i seguenti vantaggi:
Tempo di esecuzione dei test più rapido
Dimensioni e densità dello schermo in linea con le AVD di Android Studio per una maggiore coerenza
Grafica accelerata supportata da GPU
La seguente tabella descrive i vantaggi dell'utilizzo di dispositivi virtuali:
Vantaggio | Descrizione | Casi d'uso |
Alta disponibilità | Puoi eseguire test e ottenere i risultati più rapidamente quando esegui test con dispositivi virtuali. Poiché i dispositivi virtuali vengono creati su richiesta, i test iniziano quasi immediatamente, consentendo una rapida convalida dell'app. | Test di piccoli aggiornamenti dell'app o per test di regressione. |
Durate dei test più lunghe | I dispositivi virtuali supportano una durata del test massima di 60 minuti. I test sui dispositivi fisici sono limitati a una durata di 45 minuti su ciascun dispositivo. | Eseguire test più lunghi |
Riduci i costi | I dispositivi virtuali hanno un prezzo di 1 $all'ora per ogni dispositivo virtuale utilizzato per testare l'app. | Test giornalieri utilizzando sistemi di integrazione continua o prima di eseguire il controllo nel codice. Per scoprire di più, consulta Livelli di utilizzo, quote e prezzi per Test Lab. |
Testare l'app con dispositivi virtuali
Puoi testare la tua app con dispositivi virtuali nello stesso modo in cui la testare con dispositivi fisici. Puoi selezionare dispositivi virtuali per i tuoi test quando configuri una matrice di test. Per scoprire di più sull'esecuzione di test con Test Lab, consulta Iniziare a eseguire test per Android con Firebase Test Lab.
Visualizza i modelli e le API supportati
Per visualizzare i modelli e le API AVD supportati da Test Lab, esegui il seguente comando:
gcloud firebase test android models list --filter=virtual
Best practice per testare l'app
I dispositivi virtuali aumentano la gamma di opzioni quando testi la tua app con Test Lab. Ti consigliamo di utilizzare le seguenti best practice per testare la tua app durante il ciclo di vita dello sviluppo:
Utilizza l'emulatore Android Studio o un dispositivo fisico collegato
Durante lo sviluppo dell'app, utilizza l'emulatore Android Studio o un dispositivo fisico collegato per esaminare ogni build per la convalida iniziale. Se hai test di strumentazione, puoi eseguirli anche da Android Studio su dispositivi fisici o virtuali forniti da Test Lab.
Utilizza i sistemi CI su ogni modifica del codice quando lavori a progetti condivisi
Se lavori a un progetto di grandi dimensioni o se contribuisci a progetti condivisi utilizzando GitHub o un sito simile, ti consigliamo di utilizzare sistemi di integrazione continua (CI). Testa le tue app su dispositivi virtuali ogni volta che viene eseguito il sistema di CI o prima di ogni richiesta pull. Per scoprire di più sull'utilizzo di Test Lab con i sistemi di integrazione continua, consulta Utilizzare Test Lab per Android con i sistemi di integrazione continua.
Testa la tua app su dispositivi fisici con Test Lab prima di rilasciare aggiornamenti significativi dell'app
Prima di rilasciare aggiornamenti dell'app con modifiche significative all'interfaccia utente e alla funzionalità, ti consigliamo di utilizzare Test Lab per testare l'app su dispositivi fisici. In questo modo, avrai la certezza che la tua app sia stabile e ottimizzata su una vasta gamma di dispositivi fisici di uso comune. I test su dispositivi fisici garantiscono inoltre la copertura dei test per qualsiasi funzionalità dell'app che si basa su funzionalità dei dispositivi fisici non simulate dai dispositivi virtuali. Per scoprire di più su queste funzionalità, consulta Limitazioni note.
Aggiornamenti del dispositivo virtuale
Periodicamente, il team di Android aggiunge nuove immagini dei dispositivi virtuali, ritira quelle vecchie e aggiorna quelle esistenti. Applichiamo questi aggiornamenti alle nostre immagini dei dispositivi virtuali per assicurarci che i test vengano eseguiti su versioni aggiornate di Android che riflettano le esperienze degli utenti.
In rari casi, questi aggiornamenti potrebbero causare un fallimento imprevisto dei test. Se è presente un aggiornamento noto potenzialmente incompatibile, Test Lab includerà le informazioni nelle note di rilascio. Come best practice, ti consigliamo di utilizzare framework di test, ad esempio Espresso, che siano resistenti a queste modifiche, se possibile. Se non è possibile, ti consigliamo di scegliere come target i dispositivi virtuali Arm, che si prevede di aggiornare meno di frequente.
Limitazioni note
Alcune funzionalità dei dispositivi fisici non sono attualmente simulate dai dispositivi virtuali o sono simulate con alcune limitazioni. La seguente tabella riassume le funzionalità che al momento non sono disponibili sui dispositivi virtuali o che sono disponibili con determinati limiti:
Funzionalità | Dettagli |
Application Binary Interface (ABI) | Non tutti i dispositivi supportano tutte le ABI. Se
stai sviluppando con Android NDK, assicurati di generare codice per le
ABI supportate dai dispositivi di destinazione (vedi Dispositivi
disponibili in
Test Lab). Per scoprire di più sulla gestione delle ABI, consulta ABI
Android.
Nota: se un test nella matrice di test è contrassegnato come Non valido, questo potrebbe verificarsi perché la tua app ha una dipendenza dal codice nativo non supportato dall'ABI del dispositivo. |
Prestazioni grafiche | I dispositivi virtuali Nexus e Pixel utilizzano il rendering grafico software. Le applicazioni che richiedono un'intensa attività grafica possono registrare un rendimento inferiore. Se la tua app richiede un'elaborazione grafica intensa, valuta la possibilità di utilizzare SmallPhone.arm, MediumPhone.arm o dispositivi fisici. |
API di grafica | OpenGL ES 3.x non è supportato sui dispositivi con livello API precedente al 29. I dispositivi più recenti non sono compatibili al 100% con le API OpenGL/Vulkan, pertanto potresti notare piccole differenze nella grafica. |
App Google Play Store | L'app Google Play Store non è supportata sui dispositivi virtuali Arm. |
Funzionalità di realtà aumentata (AR) | Il test della funzionalità di realtà aumentata (AR) non è supportato sui dispositivi virtuali. |
Livelli API precedenti | Test Lab I dispositivi virtuali ARM non supportano i livelli API inferiori a 26. |