Risoluzione dei problemi e analisi dei problemi del Test Lab FAQ
Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
Questa pagina fornisce assistenza per la risoluzione dei problemi e risposte alle domande frequenti sull'esecuzione di test con Firebase Test Lab. Vengono documentati anche i problemi noti. Se non riesci a trovare quello che stai cercando o hai bisogno di ulteriore aiuto, unisciti al canale #test-lab su Firebase Slack o contatta il supporto Firebase .
Risoluzione dei problemi
Perché il mio test impiega così tanto tempo per essere eseguito?
Quando selezioni un dispositivo con un livello di capacità elevato nel catalogo Test Lab, i test potrebbero iniziare più velocemente. Quando un dispositivo ha una capacità ridotta, l'esecuzione dei test potrebbe richiedere più tempo. Se il numero di test richiamati è molto maggiore della capacità dei dispositivi selezionati, il completamento dei test potrebbe richiedere più tempo.
I test eseguiti a qualsiasi livello di capacità del dispositivo potrebbero richiedere più tempo a causa dei seguenti fattori:
Traffico, che influisce sulla disponibilità del dispositivo e sulla velocità del test.
Guasti del dispositivo o dell'infrastruttura, che possono verificarsi in qualsiasi momento. Per verificare se è presente un'infrastruttura segnalata per Test Lab, consulta la dashboard dello stato di Firebase .
Per ulteriori informazioni sulla capacità del dispositivo in Test Lab, consulta le informazioni sulla capacità del dispositivo per Android e iOS .
Perché ricevo risultati dei test inconcludenti?
I risultati dei test inconcludenti si verificano comunemente a causa di esecuzioni di test annullate o di errori dell'infrastruttura.
Gli errori dell'infrastruttura sono causati da problemi interni del laboratorio di test, come errori di rete o comportamenti imprevisti del dispositivo. Test Lab ritira internamente le esecuzioni di test che producono errori infrastrutturali più volte prima di riportare un risultato inconcludente; tuttavia, puoi disabilitare questi tentativi utilizzando failFast .
Per determinare la causa dell'errore, attenersi alla seguente procedura:
Riprovare il test in Test Lab per verificare che sia riproducibile.
Prova a eseguire il test su un dispositivo o tipo di dispositivo diverso, se applicabile.
Se il problema persiste, contatta il team Test Lab nel canale #test-lab su Firebase Slack.
Perché lo sharding ha allungato la durata dei miei test?
Lo sharding può far sì che i test vengano eseguiti più a lungo quando il numero di shard specificati supera il numero di dispositivi disponibili per l'uso in Test Lab. Per evitare questa situazione, prova a passare a un dispositivo diverso. Per ulteriori informazioni sulla scelta di un dispositivo diverso, consulta Capacità del dispositivoCapacità del dispositivo .
Perché l'avvio del test richiede molto tempo?
Quando invii una richiesta di test, la tua app viene prima convalidata, firmata nuovamente, ecc. in preparazione all'esecuzione dei test su un dispositivo. Normalmente, questo processo viene completato in meno di pochi secondi, ma può essere influenzato da fattori come la dimensione della tua app.
Dopo che l'app è stata preparata, le esecuzioni dei test vengono pianificate e rimangono in coda finché un dispositivo non è pronto per eseguirlo. Fino al termine dell'esecuzione di tutte le esecuzioni dei test, lo stato della matrice sarà "In sospeso" (indipendentemente dal fatto che le esecuzioni dei test siano in coda o attivamente in esecuzione).
Perché il completamento del test richiede molto tempo?
Al termine dell'esecuzione del test, gli artefatti del test vengono scaricati dal dispositivo, elaborati e caricati su Cloud Storage. La durata di questo passaggio può essere influenzata dalla quantità e dalle dimensioni degli artefatti.
Domande frequenti
Quali sono le quote a costo zero per Test Lab? Cosa devo fare se finisco?
Firebase Test Lab offre quote gratuite per i test sui dispositivi e per l'utilizzo delle API cloud. Tieni presente che la quota di test utilizza il piano tariffario Firebase standard, mentre le quote dell'API Cloud no.
Quota di test
Le quote di test sono determinate dal numero di dispositivi utilizzati per eseguire i test. Il piano Firebase Spark prevede una quota di test fissa senza alcun costo per gli utenti. Per il piano Blaze, le tue quote potrebbero aumentare se l'utilizzo di Google Cloud aumenta nel tempo. Se raggiungi la quota di test, attendi fino al giorno successivo o esegui l'upgrade al piano Blaze se attualmente utilizzi il piano Spark. Se hai già il piano Blaze puoi richiedere un aumento della quota. Per ulteriori informazioni, consulta Quota di test .
L'API Cloud Testing prevede due limiti di quota: richieste giornaliere per progetto e richieste ogni 100 secondi per progetto. Puoi monitorare il tuo utilizzo nella console Google Cloud .
Quota API Risultati di Cloud Tool
L'API Cloud Tool Results prevede due limiti di quota: query al giorno per progetto e query ogni 100 secondi per progetto. Puoi monitorare il tuo utilizzo nella console Google Cloud .
Per ulteriori informazioni sui limiti API, fai riferimento a Quote API Cloud per Test Lab . Se hai raggiunto una quota API:
Invia una richiesta per quote più elevate modificando le tue quote direttamente nella console Google Cloud (tieni presente che la maggior parte dei limiti sono impostati sul massimo per impostazione predefinita) oppure
Richiedi quote API più elevate compilando un modulo di richiesta nella console Google Cloud o contattando l'assistenza Firebase .
Come faccio a sapere se il traffico che raggiunge il mio backend proviene da Test Lab?
Dal tuo backend, puoi determinare se il traffico proviene da dispositivi di test ospitati su Firebase confrontando l'indirizzo IP di origine con i nostri intervalli IP .
Test Lab funziona con VPC-SC?
Test Lab non funziona con VPC-SC, che blocca la copia di app e altri elementi di test tra la memoria interna di Test Lab e i bucket dei risultati degli utenti.
Come posso rilevare i test instabili in Test Lab?
Per rilevare comportamenti instabili nei test, ti consigliamo di utilizzare l'opzione--num-flaky-test-attempts. Le repliche di Deflake vengono fatturate o conteggiate ai fini della quota giornaliera come le normali esecuzioni dei test.
Tieni presente quanto segue:
L'intera esecuzione del test viene eseguita nuovamente quando viene rilevato un errore. Non è disponibile alcun supporto per riprovare solo i casi di test non riusciti.
Le esecuzioni dei nuovi tentativi di Deflake sono pianificate per essere eseguite contemporaneamente, ma non è garantito che vengano eseguite in parallelo, ad esempio, quando il traffico supera il numero di dispositivi disponibili.
Test Lab supporta Appium, Flutter/FlutterDriver, ReactNative/Jest o Cucumber?
Sebbene alcuni di questi elementi siano presenti nella nostra tabella di marcia, al momento non siamo in grado di impegnarci a supportare queste piattaforme di test e di sviluppo di app.
Dove posso trovare i dettagli del dispositivo, come la risoluzione, ecc.?
Le informazioni dettagliate sul dispositivo sono disponibili tramite l'API ed è possibile accedervi dal client gcloud utilizzando il comando description :
gcloud firebase test ios models describe MODEL
Posso utilizzare lo sharding con i test iOS?
Lo sharding non è supportato in modo nativo in Test Lab per iOS. Tuttavia, puoi utilizzare il client Flank per partizionare i casi di test iOS.
Funziona impostando la chiave e i valori OnlyTestIdentifiers nel file .xctestrun . Per ulteriori dettagli, consultare la pagina man di xcodebuild.xctestrun .
Problemi conosciuti
Accedi ai Captcha
Il test Robo non può ignorare le schermate di accesso che richiedono ulteriori azioni da parte dell'utente oltre all'immissione delle credenziali per l'accesso, ad esempio il completamento di un CAPTCHA.
Supporto del framework dell'interfaccia utente
Il test Robo funziona meglio con le app che utilizzano elementi dell'interfaccia utente del framework dell'interfaccia utente Android (inclusi oggetti View , ViewGroup e WebView ). Se utilizzi il test Robo per esercitare app che utilizzano altri framework dell'interfaccia utente, incluse le app che utilizzano il motore di gioco Unity, il test potrebbe terminare senza esplorare oltre la prima schermata.