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

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

Spełnij wymagania wstępne.

Zanim przeprowadzisz testy NFC na wielu urządzeniach:

  1. Przygotuj urządzenie z implementacją Androida 15.
  2. Przestrzegaj wymagań CTS-V.
  3. Wykonaj czynności opisane w instrukcji konfiguracji CTS-V.

Przygotuj do testu DUT i czytnik NFC PN532

Po wykonaniu poprzednich czynności wykonaj te czynności, aby przygotować urządzenie testowe i czytnik NFC PN532 do testu:

  1. Połącz urządzenie DUT z hostem przez USB.
  2. Przyznaj hostowi uprawnienia dostępu do DUT przez ADB.
  3. Zainstaluj aplikację CTS Verifier (CtsVerifier.apk) na urządzeniu testowym:

    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 pliki APK do testowania NFC:

    cd MultiDevice
    
    adb install -r -g NfcEmulatorTestApp.apk
    

Konfigurowanie komunikacji NFC na urządzeniu DUT

Aby skonfigurować NFC w przypadku DUT:

  1. Na urządzeniu testowym otwórz menu Ustawienia.
  2. Znajdź sekcję NFC lub Połączone urządzenia.
  3. Upewnij się, że przełącznik NFC jest włączony.
  4. Umieść układ NFC na czytniku NFC telefonu:

    1. Uzyskaj chip NFC PN532. Zalecamy urządzenie All-In-One PN532, które nie obsługuje technologii BLE.
    2. Podłącz układ PN532 NFC do hosta Linuxa za pomocą kabla USB.
    3. Umieść układ PN532 NFC nad czytnikiem NFC telefonu, jak pokazano na ilustracji:

    Miejsce umieszczenia chipa NFC

    Rysunek 1. Umieszczenie układu NFC.

Konfigurowanie środowiska testowego

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

  1. Aby skonfigurować środowisko testowe, uruchom te polecenia:

    cd MultiDevice
    
    source build/envsetup.sh
    

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

    Jeśli w czasie wykonywania programu pojawi się 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 numery seryjne urządzenia 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 z listą przypadków testowych:

    Przypadki testowe aplikacji CTS-V

    Rysunek 3. Przypadki testowe aplikacji CTS-V.

  2. Przeprowadź testy na hoście:

    MultiDevice$ python3 tools/run_all_tests.py
    

    Po zakończeniu testów wyniki są aktualizowane w aplikacji CTS-V. Testy, które zostały ukończone, są oznaczone na zielono:

    Wyniki testu CTS-V

    Rysunek 4. Wyniki testu CTS-V.

  3. Jeśli widzisz błędy oznaczone na czerwono, uruchom ponownie testy, które się nie powiodły, za pomocą tego polecenia:

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

    Gdzie:

    • TestCaseATestCaseB to nazwy przypadków testowych wyświetlanych w CTS-V.
    • TestFileA to plik testowy zawierający przypadki testowe.

    Na przykład:

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