Esecuzione di test CTS

Trade Federation è un framework di test continuo per l'esecuzione di test sui dispositivi Android. Per eseguire la suite di test di compatibilità (CTS), leggi prima la panoramica di Trade Federation per una spiegazione del framework di test di Tradefed.

Per eseguire un piano di test:

  1. Configura i dispositivi in fase di test (DUT) in base alle Configurazione del dispositivo Android.
  2. Assicurati di aver installato le versioni recenti di Android Debug Bridge (adb) e Android Asset Packaging Tool (AAPT) e di aver aggiunto la posizione di questi strumenti al percorso di sistema del computer. Per informazioni sull'installazione di questi strumenti, consulta Configurazione di CTS: ADB e AAPT.
  3. Scarica le build CTS rilasciate sulla macchina host Linux e decomprimi la build nella posizione host.
  4. Collega almeno un dispositivo. Per preparare il DUT:
    • Premi il tasto Home per impostare il dispositivo sulla schermata Home.
    • Non utilizzare il DUT per altre attività.
    • Mantenere il dispositivo DUT in posizione stazionaria per evitare l'attivazione del sensore attività.
    • Punta la fotocamera del dispositivo verso un oggetto su cui è possibile mettere a fuoco.
    • Non premere alcun tasto sul dispositivo mentre il CTS è in esecuzione. Pressa tasti o il tocco dello schermo di un DUT interferisce con i test in esecuzione e potrebbero causare errori nei test.
  5. Avvia lo script cts-tradefed della console CTS dalla cartella in cui si trova è stato decompresso. Nella shell a riga di comando dell'host, esegui:

    ./android-cts/tools/cts-tradefed
  6. Esegui il piano di test predefinito (contiene tutti i pacchetti di test):

    cts-tradefed > run cts
    • Se vuoi migliorare il tempo di esecuzione dei test, puoi suddividere i test su più dispositivi. Lo sharding richiede che l'host colleghi almeno due dispositivi, ma per motivi di efficienza sono consigliati almeno sei dispositivi. Quando esegui lo sharding di più di un dispositivo:

      • Per Android 9 e versioni successive, utilizza l'opzione del comando

        --shard-count number_of_shards
      • Per Android 8.1 e versioni precedenti, utilizza l'opzione del comando

        --shards number_of_shards
    • Se non vuoi eseguire l'intera suite di test, puoi eseguire il piano CTS che preferisci dalla riga di comando:

      run cts --plan test_plan_name

      Per trovare il nome del piano di test:

      • Per Android 7.0 e versioni successive, per visualizzare un elenco di moduli di test, inserisci

        list modules
      • Per Android 6.0 e versioni precedenti, per visualizzare un elenco dei piani di test nel repository, inserisci

        list plans
      • Per Android 6.0 e versioni precedenti, per visualizzare un elenco di pacchetti di test nella repository, inserisci

        list packages
    • Per ulteriori opzioni dei comandi a seconda delle versioni CTS, fai riferimento alle riferimento per i comandi della console, o nella sezione "Aiutami a tutti" nella console Tradefed.

  7. Eseguire più sessioni "Riprova" fino al completamento di tutti i moduli di test e il numero di errori di test è uguale nelle ultime due sessioni di nuovo tentativo.

    • Per Android 9 e versioni successive, utilizza

      run retry --retry session_number --shard-count number_of_shards
    • Per Android 7.0-8.1, utilizza

      run cts --retry session_number --shards number_of_shards
    • Per altre opzioni del comando Riprova a seconda della versione di CTS, consulta la console di comando CTS v2.

    • Per comprendere i dettagli di implementazione per un nuovo tentativo CTS, consulta Nuovo tentativo di Trade Federation Suite.

  8. Esegui una nuova sessione di nuovo solo per i test con parametri non riusciti. I test parametrici superati non vengono ripetuti.

    • Per Android 11 e versioni successive, la seguente opzione di comando di ripetizione è attivata per impostazione predefinita nel comando run cts:

      run retry --retry  --new-parameterized-handling
  9. Visualizza l'avanzamento e i risultati del test riportati sulla console.

Esegui CTS utilizzando Android Test Station

Android Test Station è uno strumento di automazione dei test che gli sviluppatori Android testano gli ingegneri possono utilizzare un'interfaccia utente per eseguire test standard suite. Funziona con la Test Suite di compatibilità Android (CTS).

Lo strumento è disponibile pubblicamente tramite la guida utente di ATS e il codice è open source in AOSP (multitest_transport, tradefed_cluster).

Esegui CTS per le modalità alternative

La release CTS 10 R4 aggiunge un piano di test per dispositivi con modalità alternative, o per dispositivi con più schermi. Esegui il piano di test delle modalità alternative utilizzando run cts-foldable.

I casi di test superati o non superati per la modalità schermo alternativa vengono aggiunti con il valore di display_mode, ad esempio testcase1[display_mode=0].

In CTS 13, l'API DeviceStateManager consente moduli di test con i seguenti che l'opzione di configurazione venga eseguita su diversi stati di un dispositivo pieghevole. L'esecuzione del test è automatica in CTS in base agli stati di piegatura del display definiti nel dispositivo senza la necessità di eseguire il piano di test cts-foldable.

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

Test multi-dispositivo in CTS

Android 13 e versioni successive supportano i test su più dispositivi. I test che richiedono più dispositivi vengono eseguiti automaticamente durante l'esecuzione del CTS. CTS 13 include alcuni test multi-dispositivo che si attivano automaticamente durante lo sharding . Sebbene i test non richiedano ulteriori modifiche alla configurazione fisica, virtualenv deve essere installata per la corretta esecuzione dei test. Per maggiori dettagli, vedi Suite multi-dispositivo.

Eseguire test multi-dispositivo

Per eseguire i test multi-dispositivo in modo indipendente, utilizza il seguente codice:

  cts-tradefed > run cts-multidevice
  

Sono supportate tutte le opzioni standard. Per scegliere come target dispositivi specifici, aggiungi--serial <serial1> --serial <serial2> e così via per il numero di dispositivi scelto come target.

Per attivare automaticamente i test su più dispositivi, utilizza lo sharding, come in --shard-count 2.