Eseguire i test multidispositivo di CTS Verifier

Questa pagina contiene le istruzioni per l'utilizzo dei test Better Together CTS Verifier (CTS-V) per Android 16 QPR2 o versioni successive.

Configurare test multidevice lato host

Questa sezione spiega come configurare i test su più dispositivi.

  1. Verifica che il computer desktop soddisfi i requisiti del sistema operativo per CTS.
  2. Segui i passaggi 2 e 5 della sezione Installare il software desktop per installare e verificare che adb, AAPT2 e Python siano installati correttamente sul tuo computer.

    • La versione di Python deve essere 3.11 o successive. Per determinare la versione di Python, esegui python3 --version. Se la versione è precedente alla 3.11, installa l'ultima release ufficiale di Python. Per ulteriori informazioni, consulta la sezione Download di python.org.
    • Alcuni test richiedono che l'host disponga del modulo Python venv. Sui sistemi Debian e Ubuntu, questo modulo potrebbe non essere installato per impostazione predefinita. Per determinare se la tua versione di Python ha il modulo venv, esegui python3 -m venv venv. Se questo comando non va a buon fine, viene visualizzato un messaggio di errore. Segui le istruzioni per installare il pacchetto python3.x-venv.
  3. Prepara due dispositivi in test (DUT) corrispondenti, ciascuno con CTS-V configurato.

  4. Vai alla sezione di configurazione per il tipo di test:

    Se il test non è presente in questo elenco, vai a Configurare test standard su due dispositivi.

Configurare i test NFC

I test NFC utilizzano un DUT e un chip NFC PN532.

Per configurare i test NFC:

  1. Acquista un chip NFC PN532. Ti consigliamo All-In-One PN532.
  2. Sul DUT, vai all'app Impostazioni.

  3. Attiva NFC.

  4. Posiziona il chip NFC:

    • Per gli smartphone, posiziona il lettore NFC del DUT come mostrato nella Figura 1:

      Posizionamento del chip NFC

      Figura 1. Posizionamento del chip NFC.

    • Per altri tipi di dispositivi, posiziona il chip accanto all'antenna NFC del dispositivo.

  5. Collega il chip NFC PN532 alla workstation di test utilizzando un cavo USB.

(Facoltativo) Configura i test di connessione AP Wi-Fi

I test di connessione del punto di accesso (AP) Wi-Fi (CtsWifiConnectionTests) testano la connettività tra un DUT e un AP. Ti consigliamo vivamente di eseguire questi test, ma non sono obbligatori in CTS-V Android 16 16 QPR2.

Questi test richiedono un DUT e un punto di accesso OpenWrt Banana Pi R3.

Per configurare i test di connessione AP Wi-Fi:

  1. Acquista il Banana Pi R3 AP e gli accessori elencati in questa tabella:

    Articolo Quantità
    Scheda BPi-R3, simile alla scheda router Banana Pi BPI-R3 con supporto per il design del chip MediaTek MT7986 Wi-Fi 6 ,2 GB di RAM DDR ,8 GB di flash eMMC integrati 1
    Custodia in alluminio BPi-R3, simile alla custodia in ferro BPI-R3 1
    Dissipatore in alluminio BPi-R3 (ventola di raffreddamento), simile al dissipatore in alluminio BPI-R3 con ventola 1
    Antenna da 2 e 5 GHz con cavo, simile all'antenna da 5 dB nel negozio BPI 8
    Alimentatore, simile all'alimentatore 12 V/2 A CC 1

    Per effettuare l'acquisto, consulta la sezione Facile da acquistare della pagina Banana Pi BPI-R3.

  2. Configura il punto di accesso. Per informazioni sulla configurazione del punto di accesso, vedi Configurare il punto di accesso Banana Pi BPI-R3.

  3. (Facoltativo) Se non hai una scatola schermata, ti consigliamo la scatola schermata JTP-SR101. Acquista questa scatola utilizzando le seguenti informazioni:

    Dong Guan Zheng Sheng Electronics Technology Co., LTD
    Bohui Industrial Park, Panlong Road, Liaobu Town, Dongguan City, Guangdong Province, China
    Contatto: Forest Pan
    Email: forest.pan@jtpmak.cn
    Telefono (Cina): +86 18676993556

  4. Collega il DUT e l'AP all'host e inseriscili in una scatola schermata RF. Il DUT e l'AP devono essere distanti almeno 10 cm. La Figura 2 mostra questa configurazione:

    DUT e AP nella scatola schermata

    Figura 2. DUT e AP nella scatola schermata.

  5. Utilizza SSH per verificare che il punto di accesso sia accessibile dall'host.

Configurare test standard su due dispositivi

Per la configurazione predefinita con due dispositivi:

  1. Posiziona due DUT Android corrispondenti a circa 20 cm di distanza.
  2. Per configurare un ambiente pulito, posiziona entrambi i dispositivi in una scatola schermata.

  3. (Facoltativo) Configura uno sniffer OTA per il debug del Wi-Fi.

Configurare i test CDM

Lo scenario di test test_permissions_sync() ha un comportamento diverso a seconda del tipo di build dei dispositivi su cui viene eseguito il test. È fondamentale che entrambe le build eseguibili in modalità di debug (userdebug o eng) e non eseguibili in modalità di debug (user) vengano testate dagli OEM e che i test vengano superati per entrambe.

Esenzione

La clausola CDD per l'implementazione dell'API di sincronizzazione delle autorizzazioni richiede solo che sia in grado di trasferire correttamente i dati tra i dispositivi su un canale sicuro. Poiché l'implementazione del canale sicuro non è un requisito di conformità CDD, questo test può essere ignorato nelle build non eseguibili in modalità di debug (utente), ma solo se vuoi disattivare il supporto della funzionalità di sincronizzazione delle autorizzazioni CDM.

I test devono essere superati nelle build sottoponibili a debug senza eccezioni.

Prerequisiti per i test sulle build non eseguibili in modalità di debug

Se non sei esente in base alle clausole di esenzione precedenti, verifica di soddisfare i seguenti prerequisiti.

Il canale sicuro utilizza AVF (AttestationVerificationFramework) per verificare l'affidabilità dell'hardware. Le attestazioni generate da entrambe le parti contengono diverse informazioni su se stesse per garantire che non siano state apportate alterazioni non autorizzate nel loro sistema. AVF verifica i seguenti stati durante la procedura di verifica:

  • Il dispositivo ha accesso a internet
  • Il dispositivo utilizza l'avvio verificato e la build deve essere firmata con una chiave di rilascio, non con una chiave di sviluppo
  • Il bootloader del dispositivo è bloccato. Per istruzioni dettagliate, consulta Blocco del bootloader.
  • I livelli di patch di sistema operativo, avvio della chiave e fornitore della chiave sono entro 12 mesi. Non utilizzare una build precedente a un anno
  • L'attestazione del dispositivo è supportata da uno dei certificati root approvati dal fornitore. Specifica i certificati radice attendibili nell'overlay della risorsa vendor_required_attestation_certificates.xml.

Esegui test multidevice lato host (AOSP 16 o versioni successive)

CTS Verifier 16 introduce il supporto dei test multidevice lato host. Questi test possono essere eseguiti utilizzando script automatizzati sull'host, anziché l'operazione di test manuale sul dispositivo. Al termine di ogni test, i risultati vengono caricati automaticamente sul DUT e visualizzati nell'app CTS Verifier.

Questa sezione spiega come eseguire i test multidevice lato host.

Esegui test su più dispositivi

Per eseguire un test su più dispositivi:

  1. Sulla workstation di test, avvia la console cts-v-host dalla directory in cui è stato decompresso il pacchetto zip CTS-V:

    ./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
    
  2. All'interno dell'app CTS Verifier sul DUT, fai clic su Test lato host. La Figura 3 mostra i test lato host nell'app CTS Verifier:

    Test multidevice lato host nell'app CTS Verifier

    Figura 3. Test multidevice lato host nell'app CTS Verifier.

    Viene visualizzato un elenco di moduli di test multidevice lato host.

  3. Identifica il nome del modulo di test che vuoi eseguire. Ad esempio, il modulo CompanionDeviceManager è elencato come CtsCompanionDeviceManagerMultiDeviceTestCases.

  4. Nella console cts-v-host, esegui questo comando:

    run cts-v-host -m test_module_name
    

    Ad esempio:

    run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
    

    Al termine dell'esecuzione dei test, i risultati vengono visualizzati nell'app CTS Verifier. I test contrassegnati in verde sono stati superati. I test contrassegnati in rosso non sono riusciti. La figura 4 mostra i risultati di esempio per i test CtsCompanionDeviceManager:

    Risultati del test multidevice lato host nell'app CTS Verifier

    Figura 4. I risultati del test multidevice lato host nell'app CTS Verifier.

(Facoltativo) Esegui test di connessione AP Wi-Fi

Per eseguire i test di connessione AP Wi-Fi:

  1. Modifica il file di configurazione del testbed (WifiConnectionTestbed.yaml). Questo file si trova nella directory in cui è decompresso CTS-Verifier:

    ./android-cts-verifier/android-cts-v-host/testcases/CtsWifiConnectionTests/x86_64/connection/WifiConnectionTestbed.yaml
    
  2. Modifica il valore del campo hostname con l'indirizzo IP del punto di accesso, in base alle impostazioni SSH locali. Per identificare l'indirizzo IP, consulta Trovare l'indirizzo IP del punto di accesso.

    L'esempio seguente mostra la posizione del campo hostname nel file WifiConnectionTestbed.yaml:

    TestBeds:
    - Name: WifiConnectionTestbed
      Controllers:
        # Specify settings for the AP.
        OpenWrtDevice:
        - hostname: AP-IP
          skip_init_reboot: True
    
  3. Nella console cts-v-host, esegui questo comando:

    run everything -m CtsWifiConnectionTests
    

Risolvere i problemi relativi ai test su più dispositivi

Questa sezione fornisce assistenza per la risoluzione dei problemi relativi a possibili problemi.

Correzione di Nessuna risposta per GetFirmwareVersion durante i test NFC

Se ricevi il messaggio verify_firmware_version RuntimeError: No response for GetFirmwareVersion durante l'esecuzione dei test su più dispositivi, i test non possono accedere alla scheda NFC PN532.

Per risolvere il problema, identifica il percorso seriale utilizzato dalla scheda NFC PN532 sull'host, ad esempio dev/ttyUSB1, quindi specificalo manualmente utilizzando l'argomento --module-arg nella console:

run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1

Correggere il messaggio di errore Transazione non riuscita durante i test NFC

Se ricevi il messaggio Transaction failed, check device logs for more information. per tutti gli scenari di test NFC, è probabile che il chip NFC del DUT non riesca a rilevare il PN532.

Se hai più dispositivi connessi all'host e alcuni non hanno un PN532 posizionato sopra, potrebbe essere stato selezionato il DUT sbagliato. Per ulteriori informazioni, vedi Configurare i test NFC.

Per risolvere il problema, esegui una delle seguenti operazioni:

  • Imposta il numero di serie corretto del DUT nel comando di test lato host utilizzando il flag -s.

  • Scollega tutti i dispositivi non DUT dall'host.

Lo scenario di test CDM test_permissions_sync viene ignorato

Se il test viene eseguito su dispositivi non eseguibili in modalità di debug, verifica se sei esonerato. In caso contrario, verifica che entrambi i dispositivi soddisfino i prerequisiti.