Crawler dell'app

Utilizza lo strumento crawler delle applicazioni, che fa parte di Jetpack, per testare automaticamente la tua app senza dover scrivere o gestire alcun codice.

Il crawler viene eseguito insieme alla tua app, emette automaticamente azioni (tocco, scorrimento e così via) per esplorare lo spazio degli stati della tua app. La scansione termina automaticamente quando non ci sono altre azioni uniche da eseguire, l'app si arresta in modo anomalo o viene raggiunto un timeout da te indicato.

Eseguire test con il crawler è facile perché non c'è codice da scrivere o gestire. Inoltre, puoi eseguirlo su vari dispositivi per individuare arresti anomali, problemi visivi o di prestazioni. In genere, è consigliabile utilizzare un servizio basato su cloud come Firebase TestLab per testare più combinazioni di dimensioni dello schermo e configurazioni hardware in modo più facile e veloce.

Pubblico di destinazione

Il crawler delle app è rivolto agli sviluppatori che vogliono garantire la funzionalità di base delle loro app con una configurazione minima. Oltre ai test basati solo su "opaque box", il crawler può anche essere configurato per fornire input specifici, come le credenziali di accesso o i link diretti.

Per iniziare

Prima di iniziare, assicurati di disporre di una versione recente dell'SDK Android. Questo sistema include Android Studio. Se installi un SDK Android autonomo, assicurati che includa gli strumenti di creazione e della piattaforma più recenti.

Quindi, scarica l'archivio binario del crawler.

Dopodiché avvia un emulatore o collega un dispositivo fisico tramite cavo USB. Verifica che il dispositivo sia connesso eseguendo questo comando:

adb devices

Per richiamare il crawler, devi prima estrarre l'archivio nella directory scelta. Da quella directory, richiama il crawler utilizzando il seguente comando:

java -jar crawl_launcher.jar --apk-file path/to/my/app.apk --android-sdk path/to/my/android/sdk

Opzioni del crawler

Per richiamare il crawler, puoi utilizzare le seguenti opzioni:

Opzione Descrizione
--android-sdk path

Specifica il percorso dell'SDK Android.

Questo è un flag obbligatorio.

--apk-file file

Specifica il percorso dell'APK dell'app, che il crawler dell'app installa e sottopone a scansione.

Questo è un flag obbligatorio se --app-package-name non è specificato.

--app-package-name name

Specifica il nome del pacchetto della tua app. Utilizza questa opzione quando l'app è già installata sul dispositivo e non è richiesta la reinstallazione.

Questo è un flag obbligatorio se --apk-file non è specificato.

--key-store path

Specifica il percorso dell'archivio chiavi in cui vengono firmati gli APK dell'app e del crawler. Utilizza questa opzione quando la tua app richiede una firma specifica per funzionare correttamente.

--key-store-password password

Specifica la password per l'archivio chiavi fornito per l'opzione --key-store.

Questo è un flag obbligatorio se --key-store è specificato.

--timeout-sec timeout

Specifica il timeout in secondi per la scansione. Se non specificato, la scansione si interrompe dopo 60 secondi.

Problemi noti

Impossibile eliminare i file delle firme originali

Prima dell'inizio della scansione, gli utenti JDK 9 potrebbero visualizzare questo messaggio di errore:

androidx.test.tools.crawler.launcher.exceptions.ApkSigningException: Failed to delete original signature files

Se riscontri questo comportamento, ti consigliamo di utilizzare JDK 8 o 10+. Per ulteriori informazioni su questo problema, vedi questo bug di JDK 9. Alcuni utenti hanno risolto il problema ricreando l'APK utilizzando una versione aggiornata di Android Studio.

Risorse aggiuntive

Per ulteriori informazioni sull'utilizzo del crawler delle app, consulta le seguenti risorse.