Risoluzione dei problemi di Test Lab e DOMANDE FREQUENTI
Questa pagina fornisce assistenza per la risoluzione dei problemi e risposte alle domande frequenti sull'esecuzione di test con Firebase Test Lab. Sono documentati anche
i problemi noti. Se non riesci a trovare ciò che stai cercando o hai bisogno di ulteriore assistenza, partecipa al canale #test-lab su Firebase Slack o contatta l'assistenza Firebase.
Risoluzione dei problemi
Perché l'esecuzione del mio test richiede così tanto tempo?
Se nel catalogo Test Lab
selezioni un dispositivo con un livello di capacità elevato, 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 più elevato della capacità dei dispositivi selezionati, il completamento dei test può richiedere più tempo.
I test eseguiti su 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 è stata segnalata un'infrastruttura per Test Lab, consulta la dashboard dello stato di Firebase.
Per scoprire di più sulla capacità del dispositivo in Test Lab, consulta le informazioni sulla capacità del dispositivo per Android e iOS.
Perché ricevo risultati di test inconcludenti?
I risultati dei test inconcludenti si verificano di solito a causa di esecuzioni di test annullate o di errori dell'infrastruttura.
Gli errori di infrastruttura sono causati da problemi Test Lab interni, come errori di rete o comportamenti imprevisti del dispositivo. Test Lab ritira internamente le esecuzioni di test
che generano errori di infrastruttura più volte prima di segnalare un
risultato inconcludente. Tuttavia, puoi disattivare questi tentativi usando
failFast.
Riprova il test in Test Lab per verificare che sia riproducibile.
Prova a eseguire il test su un altro dispositivo o tipo di dispositivo, se applicabile.
Se il problema persiste, contatta il team di Test Lab nel
canale #test-lab su
Firebase Slack.
Perché la suddivisione ha reso più lunghi i miei test?
Lo sharding può causare un tempo di esecuzione più lungo dei test quando il numero di shard specificato supera il numero di dispositivi disponibili per l'utilizzo in Test Lab. Per evitare questa situazione, prova a passare a un altro dispositivo. Per ulteriori informazioni sulla scelta di un altro dispositivo, consulta
Capacità del dispositivo.
Perché l'inizio del mio esame sta richiedendo molto tempo?
Quando invii una richiesta di test, la tua app viene prima convalidata, firmata di nuovo e così via in preparazione all'esecuzione dei test su un dispositivo. Di solito, questa procedura viene completata in meno di qualche secondo, ma può essere influenzata da fattori come le dimensioni dell'app.
Una volta preparata l'app, le esecuzioni dei test vengono pianificate e rimangono in coda fino a quando un dispositivo non è pronto per eseguirle. Lo stato della matrice rimarrà "In attesa" fino al termine di tutte le esecuzioni dei test (indipendentemente dal fatto che siano in coda o in esecuzione).
Perché il mio
test sta impiegando molto tempo?
Al termine dell'esecuzione del test, gli elementi di 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 senza costi
per Test Lab? Che cosa devo fare se finiscono?
Firebase Test Lab offre quote senza costi 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 ha una quota fissa di test senza costi per gli utenti. Per il piano Blaze, le quote potrebbero aumentare se il tuo utilizzo di Google Cloud aumenta nel tempo. Se raggiungi la quota di test, attendi il giorno successivo o esegui l'upgrade al piano Blaze se attualmente utilizzi il piano Spark.
Se utilizzi già il piano Blaze, puoi richiedere un aumento della quota.
Per ulteriori informazioni, consulta
Testare la quota.
L'API Cloud Testing prevede due limiti di quota: richieste al giorno per progetto e richieste ogni 100 secondi per progetto. Puoi monitorare il tuo utilizzo nella console Google Cloud.
Quota dell'API Cloud Tool Results
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 delle API, consulta Quote API Cloud per Test Lab. Se hai raggiunto una quota dell'API:
Invia una richiesta per quote superiori modificando le quote direttamente nella console Google Cloud (tieni presente che la maggior parte dei limiti è impostata sul valore massimo per impostazione predefinita) oppure
Richiedi quote API più elevate compilando un modulo di richiesta nella consoleGoogle 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 controllando l'indirizzo IP di origine rispetto ai 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 lo spazio di archiviazione interno di Test Lab e i bucket dei risultati degli utenti.
Come faccio a rilevare i test inaffidabili in
Test Lab?
Per rilevare un comportamento incostante nei test, ti consigliamo di utilizzare l'opzione
--num-flaky-test-attempts
. Le riesecuzione di deflake vengono fatturate o conteggiate ai fini della quota giornaliera come le normali esecuzioni dei test.
Tieni presente che:
L'intera esecuzione del test viene eseguita di nuovo quando viene rilevato un errore. Non è supportato il nuovo tentativo solo per i casi di test non riusciti.
I nuovi tentativi di deflake sono pianificati per essere eseguiti contemporaneamente, ma non sono garantiti per essere eseguiti in parallelo, ad esempio quando il traffico supera il numero di dispositivi disponibili.
Test Lab supporta Appium, Flutter/FlutterDriver, ReactNative/Jest o Cucumber?
Anche se alcuni di questi elementi sono nella nostra roadmap, al momento non siamo in grado di impegnarci a supportare queste piattaforme di test e sviluppo di app.
Dove posso trovare i dettagli del dispositivo, come la risoluzione e così via?
Le informazioni dettagliate sul dispositivo sono disponibili tramite l'API e possono essere accessibili dal client gcloud utilizzando il comando describe:
gcloud firebase test ios models describe MODEL
Posso utilizzare lo sharding con i test per iOS?
Lo sharding non è supportato in modo nativo in Test Lab per iOS. Tuttavia, puoi utilizzare il client Flank per eseguire lo sharding dei casi di test per iOS.
Questo funziona impostando la chiave e i valori OnlyTestIdentifiers nel file .xctestrun.
Per ulteriori dettagli, consulta la pagina man per xcodebuild.xctestrun.
Problemi noti
Captcha di accesso
Il test Robo non può bypassare le schermate di accesso che richiedono un'azione aggiuntiva dell'utente oltre all'inserimento delle credenziali per accedere, ad esempio il completamento di un CAPTCHA.
Supporto del framework UI
Il test Robo funziona al meglio con le app che utilizzano elementi dell'interfaccia utente del framework UI di Android (inclusi gli oggetti View, ViewGroup e WebView). Se utilizzi il test Robo per eseguire app che utilizzano altri framework dell'interfaccia utente, incluse le app che utilizzano il motore grafico Unity, il test potrebbe uscire senza esplorare oltre la prima schermata.