Firebase Test Lab ti consente di eseguire test di qualità della tua app su una serie di dispositivi e configurazioni. Questa guida fornisce una panoramica dei concetti chiave di Test Lab, delle offerte per iOS e delle istruzioni su come iniziare a eseguire i test.
Per informazioni sulle quote e sui piani tariffari di Test Lab, consulta Utilizzo, quote e prezzi.
Concetti e termini chiave
Quando esegui un test o un insieme di casi di test su dispositivi e configurazioni selezionati, Test Lab esegue il test sulla tua app in batch, quindi mostra i risultati sotto forma di matrice di test.
Dispositivi × esecuzioni del test = matrice di test
- Dispositivo
- Un dispositivo fisico o virtuale (solo Android) su cui esegui un test, ad esempio un telefono, un tablet o un dispositivo indossabile. I dispositivi in una matrice di test sono identificati da modello del dispositivo, versione del sistema operativo, orientamento dello schermo e impostazioni internazionali (note anche come geografia e impostazioni di lingua).
- Test, esecuzione del test
- Un test (o una serie di scenari di test) da eseguire su un dispositivo. Puoi eseguire un test per dispositivo o, facoltativamente, eseguire lo sharding del test ed eseguire gli scenari di test su dispositivi diversi.
- Matrice di test
- Contiene gli stati e i risultati dei test per le esecuzioni dei test. Se un'esecuzione di test in una matrice non va a buon fine, l'intera matrice non va a buon fine.
Passaggio 1: prepara il test per il caricamento su Test Lab
Puoi eseguire i seguenti test con Test Lab. Tieni presente che tutti i tipi di test possono essere eseguiti per un massimo di 45 minuti sui dispositivi fisici e che qualsiasi eccezione non rilevata causerà un errore di test.
XCTest (inclusi XCUITests): un test delle unità che hai scritto utilizzando il framework XCTest. Per istruzioni su come modificare un XCTest da eseguire con Test Lab, consulta la pagina Creare un XCTest.
Test Ciclo di gioco: un test che utilizza una "modalità demo" per simulare le azioni dei giocatori nelle app di gioco. Si tratta di un modo rapido e scalabile per verificare che il tuo gioco funzioni bene per gli utenti. Quando scegli di eseguire un test Ciclo di gioco, puoi:
Scrivi test nativi del tuo motore di gioco.
Evita di scrivere lo stesso codice per UI o framework di test diversi.
Facoltativamente, crea più loop da eseguire in una singola esecuzione di test. Puoi anche organizzare i loop utilizzando le etichette per tenerne traccia e eseguire nuovamente loop specifici.
Visita la pagina Eseguire un test Ciclo di gioco per istruzioni su come eseguire il test in Test Lab.
Passaggio 2: scegli uno strumento per eseguire il test
Puoi scegliere i seguenti strumenti per eseguire il test:
La console Firebase ti consente di caricare un'app e avviare i test ovunque ti trovi. Per istruzioni sull'utilizzo di questo strumento, consulta Eseguire test con la console Firebase.
L'interfaccia a riga di comando gcloud consente di eseguire test dalla riga di comando in modo interattivo ed è ideale anche per creare script come parte del processo automatizzato di build e test. Consulta Eseguire test con l'interfaccia a riga di comando gcloud per istruzioni sull'utilizzo di questo strumento.
Prima di eseguire il test su dispositivi reali, eseguilo localmente su un simulatore per assicurarti che funzioni come previsto. Per istruzioni, consulta Eseguire test a livello locale.
Passaggio 3: specifica i dispositivi di test
Con Test Lab, puoi eseguire il test sull'app su una vasta gamma di modelli e dispositivi iOS ospitati in un data center di Google. Per saperne di più, consulta Dispositivi disponibili.
Passaggio 4: esamina i risultati del test
Indipendentemente da come avvii i test, tutti i risultati vengono gestiti da Test Lab e possono essere visualizzati online.
Il riepilogo dei risultati del test viene memorizzato automaticamente e può essere visualizzato nella console Firebase. Contiene i dati più pertinenti per il test, inclusi video specifici per i casi di test, screenshot, il numero di test superati, non superati o con risultati incostanti e altro ancora.
I risultati non elaborati dei test contengono i log dei test e i dettagli degli errori dell'app e vengono memorizzati automaticamente in un bucket Google Cloud. Se specifichi un bucket, sei responsabile del costo dello spazio di archiviazione. Se non specifichi un bucket, Test Lab ne crea uno per te senza costi.
Per maggiori dettagli, consulta Analizzare i risultati di Firebase Test Lab.
Pulizia del dispositivo
La sicurezza dei dati delle app è molto importante per Google. Seguiamo le best practice standard del settore per rimuovere i dati delle app e reimpostare le impostazioni di sistema dei dispositivi fisici dopo ogni esecuzione di test per assicurarci che siano pronti a eseguire nuovi test. Per i dispositivi su cui possiamo eseguire il flashing con un'immagine di recupero personalizzata, facciamo un ulteriore passo avanti eseguendo il flashing di questi dispositivi tra un'esecuzione del test e l'altra.
Per i dispositivi virtuali utilizzati da Test Lab, le istanze vengono eliminate dopo l'utilizzo in modo che ogni esecuzione del test utilizzi una nuova istanza di dispositivo virtuale.
Consentire ai dispositivi Test Lab di accedere ai server di backend privati
Alcune app mobile devono comunicare con servizi di backend privati per funzionare correttamente durante i test. Se i tuoi server di backend sono protetti da regole firewall, puoi consentire l'accesso ai dispositivi fisici e virtuali di Test Lab utilizzando i blocchi di indirizzi IP riportati di seguito per aprire le route attraverso il firewall.
Pubblicità per il mobile
Test Lab fornisce un'infrastruttura scalabile che automatizza i test delle app e, purtroppo, questa funzionalità può essere usata in modo improprio da app dannose progettate per generare entrate pubblicitarie fraudolente.
Per ridurre il problema:
Se utilizzi o collabori con fornitori di pubblicità digitale di terze parti (ad esempio reti pubblicitarie o Demand-Side Platform), ti consigliamo di utilizzare annunci di prova anziché annunci reali durante lo sviluppo e i test delle app.
Se devi utilizzare annunci reali nel test, informa i fornitori di pubblicità digitale con cui collabori di filtrare le entrate e tutto il traffico corrispondente generato da Test Lab utilizzando i blocchi di indirizzi IP riportati di seguito. Non è necessario informare i fornitori di annunci di proprietà di Google; Test Lab si occupa di tutto.
Indirizzi IP utilizzati dai dispositivi Test Lab
Tutto il traffico di rete generato dai dispositivi Test Lab ha origine dai seguenti
blocchi di indirizzi IP.
Puoi accedere a questo elenco anche utilizzando il
gcloud beta firebase test ip-blocks list
comando
nell'interfaccia a riga di comando gcloud. L'elenco viene aggiornato mediamente una volta all'anno.
Piattaforma e tipo di dispositivo | Blocco di indirizzi IP CIDR |
---|---|
Dispositivi fisici Android e iOS, dispositivi virtuali ARM |
70.32.128.0/19 (aggiunta a febbraio 2022) 108.177.6.0/23 108.177.18.192/26 (aggiunto a febbraio 2022) 108.177.29.64/27 (espanso dal 02-2022) 108.177.31.160/27 (aggiunto a febbraio 2022) 199.36.156.8/29 (aggiunto il 02-2022) 199.36.156.16/28 (aggiunto a febbraio 2022) 209.85.131.0/27 (aggiunto a febbraio 2022) 2001:4860:1008::/48 (aggiunto a febbraio 2022) 2001:4860:1018::/48 (aggiunto a febbraio 2022) 2001:4860:1019::/48 (aggiunto a febbraio 2022) 2001:4860:1020::/48 (aggiunto a febbraio 2022) 2001:4860:1022::/48 (aggiunto il 02-2022) 70.32.128.48/28 (aggiunto il 04-2024) |
Dispositivi virtuali Android (non ARM) |
34.68.194.64/29 (aggiunto a novembre 2019) 34.69.234.64/29 (aggiunta a novembre 2019) 34.73.34.72/29 (aggiunti 11-2019) 34.73.178.72/29 (aggiunto a novembre 2019) 34.74.10.72/29 (aggiunto a febbraio 2022) 34.136.2.136/29 (aggiunto a febbraio 2022) 34.136.50.136/29 (aggiunto a febbraio 2022) 34.145.234.144/29 (aggiunta a febbraio 2022) 35.192.160.56/29 35.196.166.80/29 35.196.169.240/29 35.203.128.0/28 35.234.176.160/28 35.243.2.0/27 (aggiunto a luglio 2019) 35.245.243.240/29 (aggiunti il 02-2022) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
I blocchi IP dei dispositivi non vengono più utilizzati |
74.125.122.32/29 (rimosso a febbraio 2022) 216.239.44.24/29 (rimosso il 02-2022) |