Esecuzione di test NFC multi-dispositivo

Questo documento spiega come eseguire test NFC su più dispositivi.

Soddisfare i prerequisiti

Prima di eseguire test NFC multi-dispositivo, segui questi passaggi:

  1. Prepara un dispositivo con l'implementazione di Android 15.
  2. Rispetta i requisiti CTS-V.
  3. Segui la configurazione di CTS-V.

Prepara un DUT e un lettore NFC PN532 per il test

Dopo aver completato i passaggi precedenti, segui questi passaggi per eseguire prepara un DUT e un lettore NFC PN532 per il test:

  1. Collega il dispositivo DUT a un computer host tramite USB.
  2. Concedi all'host le autorizzazioni per accedere al DUT tramite ADB.
  3. Installa l'app CTS Verifier (CtsVerifier.apk) sul DUT:

    extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip
    
    cd android-cts-verifier
    
    adb install -r -g CtsVerifier.apk
    
  4. Installa gli APK richiesti per il test NFC:

    cd MultiDevice
    
    adb install -r -g NfcEmulatorTestApp.apk
    

Configurare l'NFC per il DUT

Segui questi passaggi per configurare l'NFC per il DUT:

  1. Sul DUT, vai al menu Impostazioni.
  2. Cerca la sezione NFC o Dispositivi connessi.
  3. Assicurati che l'opzione NFC sia attiva.
  4. Posiziona un chip NFC sul lettore NFC dello smartphone:

    1. Acquista un chip NFC PN532. Ti consigliamo l'opzione All-In-One PN532 non BLE.
    2. Collega il chip NFC PN532 all'host Linux utilizzando un cavo USB.
    3. Posiziona il chip NFC PN532 sul lettore NFC del telefono, come mostrato nell'immagine seguente:

    Posizionamento del chip NFC

    Figura 1. Posizionamento del chip NFC.

Configura l'ambiente di test

Per configurare l'ambiente di test:

  1. Esegui questi comandi per configurare l'ambiente di test:

    cd MultiDevice
    
    source build/envsetup.sh
    

    Questo comando controlla Python e configura la variabile di ambiente PYTHONPATH. Se non vengono stampati errori sul terminale, l'ambiente è pronto per eseguire i test multi-dispositivo.

    Se viene visualizzato il messaggio di errore libtinfo.so.6: no version information available (required by /bin/sh) in fase di esecuzione, esegui il seguente comando per rinominare il file libtinfo.so.6:

    mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
    
  2. Configura la piattaforma di test impostando gli ID di serie del DUT e del lettore NFC PN532 in MultiDevice/config.yml:

    TestBeds:
      - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv
        Controllers:
          AndroidDevice:
            - serial: "<device-id>"
        TestParams:
          pn532_serial_path: "<pn532-serial-path>"
    

Esegui i test NFC

Per eseguire i test NFC:

  1. Apri l'app CTS-V e tocca Test NFC:

    L&#39;app CTS-V

    Figura 2. L'app CTS-V.

    Viene visualizzata la finestra delle informazioni con l'elenco degli scenari di test:

    I casi di test dell&#39;app CTS-V

    Figura 3. Scenari di test dell'app CTS-V.

  2. Esegui i test sul tuo host:

    MultiDevice$ python3 tools/run_all_tests.py
    

    Al termine dei test, i risultati vengono aggiornati nell'app CTS-V. I test riusciti sono verdi:

    I risultati del test CTS-V

    Figura 4. Risultati del test CTS-V.

  3. Se vedi errori contrassegnati in rosso, utilizza il comando seguente per eseguire nuovamente i test non riusciti:

    python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
    

    Dove:

    • TestCaseA e TestCaseB sono i nomi dei casi di test visualizzati in CTS-V.
    • TestFileA è il file di test contenente gli scenari di test.

    Ad esempio:

    python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"