Utilizzo della strumentazione per Android e AWS Device Farm - AWS Device Farm

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Utilizzo della strumentazione per Android e AWS Device Farm

Device Farm fornisce supporto per Instrumentation (JUnit, Espresso, Robotium o qualsiasi test basato su strumentazione) per Android.

Device Farm fornisce anche un'applicazione Android di esempio e collegamenti a test di lavoro in tre framework di automazione Android, tra cui Instrumentation (Espresso). L'app di esempio Device Farm per Android è disponibile per il download su GitHub.

Che cos'è la strumentazione?

Instrumentation di Android consente di invocare metodi di callback nel codice di test in modo da poter eseguire tutto il ciclo di vita di un componente passo-passo, come se si stesse effettuando il debug del componente. Per ulteriori informazioni, consulta Test strumentati nella sezione Tipi e posizioni dei test della documentazione di Android Developer Tools.

Carica i tuoi test di strumentazione Android

Usa la console Device Farm per caricare i test.

  1. Accedere alla console Device Farm all'indirizzo https://console.aws.amazon.com/devicefarm.

  2. Nel pannello di navigazione di Device Farm, scegli Mobile Device Testing, quindi scegli Progetti.

  3. Nell'elenco dei progetti, scegli il progetto su cui vuoi caricare i test.

    Suggerimento

    Puoi utilizzare la barra di ricerca per filtrare l'elenco dei progetti per nome.

    Per creare un progetto, segui le istruzioni indicate nella sezione Crea un progetto in AWS Device Farm.

  4. Se il pulsante Create a new run (Crea una nuova sessione è visualizzato, selezionarlo.

  5. Nella pagina Scegli applicazione, seleziona Scegli file.

  6. Individua e seleziona il file dell'app Android. Il file deve essere di tipo .apk.

  7. Seleziona Successivo.

  8. Nella pagina Configura, nella sezione Setup test framework, scegli Strumentazione, quindi seleziona Scegli file.

  9. Individuare e selezionare il file .apk che contiene i test.

  10. Scegli Avanti, quindi completa le istruzioni rimanenti per selezionare i dispositivi e avviare l'esecuzione.

Acquisizione di schermate nei test della strumentazione Android

Durante i test di Instrumentation per Android, si possono acquisire screenshot.

Per acquisire screenshot, chiamare uno dei seguenti metodi:

  • Per Robotium, chiamare il metodo takeScreenShot (ad esempio, solo.takeScreenShot();).

  • Per Spoon, chiamare il metodo screenshot, ad esempio:

    Spoon.screenshot(activity, "initial_state"); /* Normal test code... */ Spoon.screenshot(activity, "after_login");

Durante un'esecuzione di test, Device Farm ottiene schermate dalle seguenti posizioni sui dispositivi, se esistono, e quindi le aggiunge ai rapporti di test:

  • /sdcard/robotium-screenshots

  • /sdcard/test-screenshots

  • /sdcard/Download/spoon-screenshots/test-class-name/test-method-name

  • /data/data/application-package-name/app_spoon-screenshots/test-class-name/test-method-name

Considerazioni aggiuntive per i test di strumentazione Android

System Animations (Animazioni di sistema)

Secondo la documentazione Android per i test di Espresso, si consiglia di disattivare le animazioni di sistema durante i test su dispositivi reali. Device Farm disattiva automaticamente le impostazioni Window Animation Scale, Transition Animation Scale e Animator Duration Scale quando viene eseguito con il test runner di strumentazione ndroidJUnitandroid.support.test.runner.A Runner.

Test Recorders (Registratori di test)

Device Farm supporta framework, come Robotium, che dispongono record-and-playback di strumenti di scripting.

Analisi dei test in modalità standard

Nella modalità standard di esecuzione, Device Farm analizza la suite di test e identifica le classi e i metodi di test univoci che verrà eseguita. Questo viene fatto tramite uno strumento chiamato Dex Test Parser.

Quando viene fornito un file.apk della strumentazione Android come input, il parser restituisce i nomi completi dei metodi dei test che corrispondono JUnit alle convenzioni 3 e 4. JUnit

Per testarlo in un ambiente locale:

  1. Scarica il file dex-test-parserbinario.

  2. Esegui il comando seguente per ottenere l'elenco dei metodi di test che verranno eseguiti su Device Farm:

    java -jar parser.jar path/to/apk path/for/output