Configurare i test automatici CTS

Prima di poter eseguire i test CTS automatici, prepara l'ambiente fisico, configura la workstation e configura il dispositivo che stai testando.

Configura l'ambiente fisico

Alcuni test CTS richiedono l'utilizzo di dispositivi esterni da configurare vicino al DUT. Per configurare l'ambiente fisico:

  1. (Facoltativo) Se il DUT supporta Bluetooth LE, posiziona almeno tre beacon Bluetooth LE entro 5 metri dal DUT per i test di scansione Bluetooth LE. Inoltre:

    • I beacon non devono essere configurati o emettere nulla di specifico.
    • I beacon possono essere di qualsiasi tipo, inclusi iBeacon, Eddystone o persino dispositivi che simulano beacon BLE.
  2. Posiziona lo smartphone davanti a una scena, ad esempio una parete o il soffitto, a una distanza equivalente alla distanza minima di messa a fuoco del DUT. Inoltre:

    • La scena deve avere un'illuminazione sufficiente per consentire ai sensori in prova di raggiungere e mantenere i frame al secondo (FPS) target configurati come specificato in CONTROL_AE_TARGET_FPS_RANGE.
    • Questa configurazione si applica a tutti i sensori delle videocamere segnalati da getCameraIdList man mano che il test esegue l'iterazione sui dispositivi elencati e misura il rendimento individualmente.
    • Se il DUT supporta le videocamere esterne, ad esempio le webcam USB, collega una videocamera esterna quando esegui il CTS. In caso contrario, i test CTS non andranno a buon fine.
  3. (Facoltativo) Se il DUT supporta un sistema di posizionamento globale (GPS) o un altro sistema di navigazione satellitare globale (GNSS), fornisci un segnale GNSS al DUT a un livello di segnale adatto per la ricezione e il calcolo della posizione. Inoltre:

    • Il GPS deve essere conforme allo standard ICD-GPS-200C.
    • Il segnale GNSS può essere di qualsiasi tipo, incluso un simulatore di satelliti o un ripetitore di segnali esterni.
    • Puoi posizionare il DUT vicino a una finestra in modo che possa ricevere direttamente un segnale GNSS sufficiente da un satellite.
  4. Assicurati che la rete Wi-Fi supporti IPv4 e IPv6, abbia una connessione internet con DNS per IPv4 e IPv6, supporti il multicast IP e possa trattare il DUT come un cliente isolato.

    Se non hai accesso a una rete IPv6 nativa, a una rete dell'operatore IPv6 o a una VPN per superare i test IPv6, utilizza un AP Wi-Fi e un tunnel IPv6.

  5. Assicurati che sul DUT siano impostati i flag UP, BROADCAST e MULTICAST sull'interfaccia Wi-Fi.

  6. Assicurati che all'interfaccia Wi-Fi siano assegnati indirizzi IPv4 e IPv6. Per controllare le proprietà dell'interfaccia Wi-Fi, esegui adb shell ifconfig.

  7. (Facoltativo) Se il DUT supporta la contemporaneità Wi-Fi STA o STA, configura almeno due reti Wi-Fi. Queste reti Wi-Fi devono funzionare su bande diverse con SSID diversi o sullo stesso SSID con BSSID diversi.

  8. (Facoltativo) Se il DUT supporta il tempo di round trip (RTT) Wi-Fi, configura un dispositivo che supporti il RTT Wi-Fi:

    1. Posiziona il dispositivo RTT Wi-Fi a una distanza massima di 12 metri dal DUT.
    2. Accendi il dispositivo RTT Wi-Fi.

    Ecco due dispositivi consigliati che supportano il RTT Wi-Fi: - Google Wifi - Punto di accesso fitlet2 di Compulab (impostato su una larghezza di banda di 40 MHz a 5 GHz).

Configurare il computer

Prima di eseguire i test automatici CTS, assicurati che il computer desktop soddisfi i requisiti hardware e del sistema operativo e che sia installato il software appropriato, come descritto nelle sezioni seguenti.

Soddisfare i requisiti hardware

Il computer CTS deve soddisfare o superare i seguenti requisiti hardware:

  • Un sistema x86 a 64 bit

  • Almeno 256 GB di spazio libero su disco per supportare l'aumento del numero di casi di test CTS e un aumento della prenotazione dello spazio heap Java in Tradefed

  • Almeno 32 GB di RAM

Soddisfare i requisiti del sistema operativo

La macchina di sviluppo deve eseguire una distribuzione Linux a 64 bit con GNU C Library (glibc) 2.17 o versioni successive.

Installare il software per computer

Per installare il software desktop appropriato per CTS:

  1. Installa il pacchetto FFmpeg 5.1.3 o versioni successive.

  2. Installa le versioni più recenti di Android Debug Bridge (adb) e Android Asset Packaging Tool (AAPT2) e aggiungi la posizione di questi strumenti al percorso di sistema del computer:

    1. Segui le istruzioni all'inizio della documentazione di SDK Manager per installare lo strumento a riga di comando sdkmanager. Il link per scaricare gli strumenti a riga di comando si trova nella sezione Solo strumenti a riga di comando nella parte inferiore della pagina di download di Android Studio.
    2. Aggiorna il percorso di sistema in modo da includere la posizione del sdkmanager appena installato.
    3. Utilizzando sdkmanager, installa i pacchetti platform-tools e build-tools più recenti. Questi pacchetti contengono adb e AAPT2. Per informazioni sull'installazione dei pacchetti, vedi Installare i pacchetti.
    4. Aggiorna il percorso in modo da includere la posizione degli strumenti adb e AAPT2 appena installati.
    5. Verifica che adb e AAPT2 siano nel percorso.
  3. Installa la versione corretta di Java Development Kit (JDK):

  4. (Facoltativo) Per Android 13 o versioni successive, installa virtualenv. Lo strumento virtualenv è necessario per i test multidispositivo.

  5. Per assicurarti che Python sia installato, digita python3. Dovresti visualizzare la versione e la data di Python, a indicare che Python è installato correttamente.

  6. Scarica e apri i pacchetti CTS da Download di Compatibility Test Suite che corrispondono alla versione di Android dei tuoi dispositivi e a tutte le interfacce di annunci binari (ABI) delle applicazioni supportate dai tuoi dispositivi.

  7. Scarica e apri la versione più recente dei file multimediali CTS. I file multimediali includono clip video di Big Buck Bunny, protetti da copyright dalla Blender Foundation ai sensi della licenza Creative Commons Attribution 3.0.

  8. (Facoltativo) Quando esegui CTS per la prima volta, vengono scaricati dinamicamente alcuni file CTS correlati a Mainline. A seconda della velocità della rete, questo download aggiunge almeno 10 minuti al tempo di esecuzione del CTS.

    Per evitare questo tempo di esecuzione aggiuntivo di CTS, puoi scaricare i file CTS correlati a Mainline prima di eseguire CTS. Per informazioni sul download dei file CTS correlati al canale principale, consulta Scarica i file CTS correlati al canale principale.

Prepara il DUT

Dopo aver configurato il computer, devi configurare il DUT.

Configura il DUT

Per configurare il DUT:

  1. Assicurati che sul DUT sia in esecuzione un'immagine di sistema basata sulla build utente compatibile (Android 4.0 o versioni successive) di Nomi in codice, tag e numeri di build e che utilizzi la variante di build user. Per saperne di più sulle varianti di build, consulta Scegliere un target.

  2. Se sul DUT è installato Android 13 o versioni successive, assicurati che nella build sia impostato ro.product.first_api_level sul livello API con cui il dispositivo è stato lanciato commercialmente. Per impostare questo valore, apporta la seguente modifica al device.mk file:

    PRODUCT_SHIPPING_API_LEVEL := 21
    

    Alcuni requisiti CTS dipendono dalla build con cui un dispositivo è stato originariamente fornito. Ad esempio, i dispositivi originariamente forniti con build precedenti potrebbero essere esclusi dai requisiti di sistema che si applicano ai dispositivi forniti con build successive. Per i valori validi del livello API, consulta Nomi in codice, tag e numeri di build. Per ulteriori informazioni su ro.product.first_api_level, consulta Livello API del fornitore.

    Per Android 10 o versioni precedenti, consulta Configurare CTS (AOSP 10 o versioni precedenti).

  3. Se il tuo dispositivo supporta la gestione dei pacchetti APEX:

    1. Scarica il pacchetto shim APEX per la versione Android e l'architettura hardware specifiche. Le due colonne a sinistra della tabella pacchetti shim forniscono i link al pacchetto da scaricare.
    2. Copia il pacchetto scaricato in /system/apex.
    3. Rinomina il file in com.android.apex.cts.shim.apex.
  4. Se il tuo dispositivo non supporta la gestione dei pacchetti APEX:

    1. Scarica i pacchetti shim APEX per la versione Android e l'architettura hardware specifiche. Le due colonne a destra della tabella dei pacchetti shim forniscono i link ai pacchetti da scaricare.
    2. Copia CtsShim.apk in /system/app/
    3. Rinomina CtsShim.apk in CtsShimPrebuilt.apk
    4. Copia CtsShimPriv.apk in /system/priv-app/
    5. Rinomina CtsShimPriv.apk in CtsShimPrivPrebuilt.apk
  5. Se il dispositivo segnala più di un elemento sicuro:

    1. Scarica google-cardlet.cap.
    2. Copia il file scaricato in /data/uicc/cardlets/.
  6. Se il dispositivo segnala più di un elemento di sicurezza, installa l'applet di esempio nell'elemento di sicurezza integrato (eSE) del DUT o nella scheda SIM utilizzata dal DUT. Per ulteriori informazioni, consulta Test CTS per il Secure Element.

  7. Se il dispositivo non ha uno schermo integrato, collega un suo schermo.

  8. Se il dispositivo è dotato di uno slot per schede di memoria, collega una scheda SD vuota. Utilizza una scheda SD che supporti un bus UHS (Ultra High Speed) con capacità SDHC o SDXC o una scheda con classe di velocità 10 o superiore per assicurarti che possa superare il CTS.

  9. Se il dispositivo è dotato di slot per schede SIM, inserisci una scheda SIM attivata in ogni slot. Se il dispositivo supporta gli SMS, ogni scheda SIM deve avere il proprio campo numero compilato. Per i dispositivi con sistema operativo Android 12 o versioni successive, tutte le schede SIM devono supportare la memorizzazione dei numeri di chiamata abbreviati (ADN). Le schede GSM e USIM con il file dedicato per le telecomunicazioni (DFTelecom) soddisfano questo requisito.

  10. Assicurati che il dispositivo abbia una SIM con privilegi dell'operatore CTS che soddisfino i requisiti specificati in Preparare la UICC.

Configura il DUT

Per configurare il DUT per l'utilizzo con CTS, segui questi passaggi.

Sul DUT:

  1. Ripristina i dati di fabbrica del dispositivo.

  2. Imposta la lingua del dispositivo su Inglese (Stati Uniti).

  3. Se il dispositivo supporta la personalizzazione dei caratteri predefiniti, assicurati che la famiglia di caratteri sans-serif predefinita sia impostata su Roboto.

  4. Se sul dispositivo è presente una funzionalità GPS, Wi-Fi o di rete mobile, attiva l'impostazione di geolocalizzazione.

  5. Connettiti a una rete Wi-Fi che supporta IPv6, può trattare il DUT come un client isolato e dispone di una connessione a internet. Per una spiegazione sui client isolati, consulta Configurare l'ambiente fisico.

  6. Assicurati che non sia impostata una sequenza o una password di blocco.

  7. Attiva il debug USB:

    1. Vai a Impostazioni > Informazioni sullo smartphone e tocca Numero build sette volte. Le Opzioni sviluppatore vengono visualizzate nella categoria delle impostazioni Sistema.

    2. Tocca Debug USB.

    Per attivare il debug USB su Android 10 o versioni precedenti, consulta Configurare CTS (AOSP 10 o versioni precedenti).

  8. Imposta l'ora nel formato 12 ore.

  9. Attiva Opzioni sviluppatore > Rimani attivo.

  10. Disattivare la verifica app tramite USB:

    1. Vai a Opzioni sviluppatore.

    2. Tocca Verifica app tramite USB.

  11. In Android 13 o versioni successive, attiva il modem simulato:

    1. Vai a Opzioni sviluppatore.

    2. Tocca Consenti modem fittizio.

    Questa impostazione è obbligatoria per test di telefonia specifici.

Sul computer:

  1. Avvia il browser e ignora eventuali schermate di avvio o configurazione.

  2. Collega il DUT al computer con un cavo USB.

  3. Se il sistema ti chiede di accettare una chiave RSA che consenta il debug tramite questo computer, fai clic su Consenti il debug USB.

  4. Imposta Roboto2 come carattere senza grazie utilizzando un'impostazione accessibile all'utente (non nascosta).

  5. Copia i file multimediali CTS sul DUT:

    1. Vai (cd) al percorso in cui vengono scaricati e scompattati i file multimediali.
    2. Modificare le autorizzazioni dei file:

      chmod u+x copy_media.sh
      
    3. Copia i file:

      • Per copiare i clip fino a una risoluzione di 720 x 480, esegui:

        ./copy_media.sh 720x480
      • Se hai dubbi sulla risoluzione massima, copia tutti i file:

        ./copy_media.sh all
      • Se sono presenti più DUT, aggiungi alla fine l'opzione di serie (-s) di un dispositivo specifico. Ad esempio, per copiare fino a 720 x 480 sul dispositivo con numero di serie 1234567, esegui:

        ./copy_media.sh 720x480 -s 1234567

Scaricare i file CTS relativi alla rete principale

Per scaricare i file CTS relativi alla versione principale:

  1. Per ottenere il livello API Android sul dispositivo, esegui:

    adb shell getprop ro.build.version.sdk
    
  2. Segui le istruzioni nello script download_mcts.sh per scaricare i file CTS principali.

    Il download richiede almeno 10 minuti, a seconda della velocità della rete.

Pacchetti shim

La tabella seguente elenca i pacchetti disponibili per ogni versione e architettura del dispositivo:

Versione dispositivo Pacchetti (se APEX supportato) Pacchetti (se APEX non è supportato)
ABILITA x86 ABILITA x86
Android 15 15-arm-release android15-x86-release android15-arm-CtsShim.apk

android15-arm-CtsShimPriv.apk

android15-x86-CtsShim.apk

android15-x86-CtsShimPriv.apk

Android 14 android14-arm-release android14-x86-release android14-arm-CtsShim.apk

android14-arm-CtsShimPriv.apk

android14-x86-CtsShim.apk

android14-x86-CtsShimPriv.apk

Android 13 android13-arm-release android13-x86-release android13-arm-CtsShim.apk

android13-arm-CtsShimPriv.apk

android13-x86-CtsShim.apk

android13-x86-CtsShimPriv.apk

Android 12 android12-arm-release android12-x86-release android12-arm-CtsShim.apk

android12-arm-CtsShimPriv.apk

android12-x86-CtsShim.apk

android12-x86-CtsShimPriv.apk

Android 11 android11-arm-release android11-x86-release android11-arm-CtsShim.apk

android11-arm-CtsShimPriv.apk

android11-x86-CtsShim.apk

android11-x86-CtsShimPriv.apk

Android 10 android10-release android10-arm-CtsShim.apk

android10-arm-CtsShimPriv.apk

android10-x86-CtsShim.apk

android10-x86-CtsShimPriv.apk

Android 9, O e O-MR1 N/D N/D arm-CtsShim.apk

arm-CtsShimPriv.apk

x86-CtsShim.apk

x86-CtsShimPriv.apk

Passaggi successivi

Dopo aver letto questo documento, vai a Eseguire test CTS automatici.