Esecuzione di test NFC multi-dispositivo

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

Soddisfare i prerequisiti

Prima di eseguire i test NFC su più dispositivi, svolgi i seguenti 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 DUT a una macchina 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 NFC per il DUT

Per configurare il NFC per il DUT, segui questi passaggi:

  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 non BLE All-In-One PN532.
    2. Collega il chip NFC PN532 all'host Linux utilizzando un cavo USB.
    3. Posiziona il chip NFC PN532 sopra il lettore NFC dello smartphone come mostrato nella seguente immagine:

    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 su più dispositivi.

    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. CTS-V app test cases.

  2. Esegui i test sull'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 visualizzi errori contrassegnati in rosso, utilizza il seguente comando 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"