Uruchamianie testów NFC na wielu urządzeniach (Android 15)

Z tego dokumentu dowiesz się, jak przeprowadzić testy NFC na wielu urządzeniach.

Spełnianie wymagań wstępnych

Zanim przeprowadzisz testy NFC na wielu urządzeniach, wykonaj te czynności:

  1. Przygotuj urządzenie z implementacją Androida 15.
  2. Postępuj zgodnie z wymaganiami CTS-V .
  3. Postępuj zgodnie z instrukcjami konfiguracji CTS-V setup.

Przygotowywanie DUT i czytnika NFC PN532 do testu

Po wykonaniu poprzednich czynności przygotuj DUT i czytnik NFC PN532 do testu, wykonując te czynności:

  1. Podłącz DUT do komputera hosta przez USB.
  2. Przyznaj hostowi uprawnienia dostępu do DUT przez ADB.
  3. Zainstaluj na DUT aplikację CTS Verifier (CtsVerifier.apk):

    extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip
    
    cd android-cts-verifier
    
    adb install -r -g CtsVerifier.apk
    
  4. Zainstaluj wymagane do testu NFC pliki APK:

    cd MultiDevice
    
    adb install -r -g NfcEmulatorTestApp.apk
    

Konfigurowanie NFC na DUT

Aby skonfigurować NFC na DUT, wykonaj te czynności:

  1. Na DUT otwórz menu Ustawienia.
  2. Znajdź sekcję NFC lub Połączone urządzenia.
  3. Sprawdź, czy przełącznik NFC jest włączony.
  4. Umieść chip NFC na czytniku NFC telefonu:

    1. Kup chip NFC PN532. Zalecamy użycie opcji All-In-One PN532, non-BLE.
    2. Podłącz chip NFC PN532 do hosta z systemem Linux za pomocą kabla USB.
    3. Umieść chip NFC PN532 nad czytnikiem NFC telefonu, jak pokazano na ilustracji poniżej:

    Umiejscowienie chipa NFC

    Rysunek 1. Umieszczenie chipa NFC.

Konfigurowanie środowiska testowego

Aby skonfigurować środowisko testowe, wykonaj te czynności:

  1. Uruchom te polecenia, aby skonfigurować środowisko testowe:

    cd MultiDevice
    
    source build/envsetup.sh
    

    To polecenie sprawdza Pythona i ustawia zmienną środowiskową PYTHONPATH. Jeśli w terminalu nie pojawią się żadne błędy, środowisko jest gotowe do przeprowadzenia testów na wielu urządzeniach.

    Jeśli podczas działania programu zobaczysz komunikat o błędzie libtinfo.so.6: no version information available (required by /bin/sh), uruchom to polecenie , aby zmienić nazwę pliku libtinfo.so.6:

    mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
    
  2. Skonfiguruj stanowisko testowe, ustawiając identyfikatory seryjne DUT i czytnika NFC PN532 w pliku MultiDevice/config.yml:

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

Przeprowadzanie testów NFC

Aby przeprowadzić testy NFC:

  1. Otwórz aplikację CTS-V i kliknij Testy NFC:

    Aplikacja CTS-V

    Rysunek 2. Aplikacja CTS-V.

    Pojawi się okno informacyjne z listą elementów testowania:

    Przypadki testowe aplikacji CTS-V

    Rysunek 3. Elementy testowania w aplikacji CTS-V.

  2. Uruchom testy na hoście:

    MultiDevice$ python3 tools/run_all_tests.py
    

    Po zakończeniu testów wyniki zostaną zaktualizowane w aplikacji CTS-V. Zaliczone testy są oznaczone kolorem zielonym:

    Wyniki testu CTS-V

    Rysunek 4. Wyniki testów CTS-V.

  3. Jeśli zobaczysz jakieś błędy oznaczone kolorem czerwonym, użyj tego polecenia, aby ponownie uruchomić testy, które się nie powiodły:

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

    Gdzie:

    • TestCaseA i TestCaseB to nazwy elementów testowania wyświetlane w CTS-V.
    • TestFileA to plik testowy zawierający elementy testowania.

    Przykład:

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