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, wykonaj te czynności:
- Przygotuj urządzenie z implementacją Androida 15.
- Przestrzegaj wymagań dotyczących CTS-V.
- 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ć do testu urządzenie DUT i czytnik NFC PN532:
- Podłącz DUT do hosta przez USB.
- Przyznaj hostowi uprawnienia dostępu do DUT przez ADB.
Zainstaluj aplikację CTS Verifier (
CtsVerifier.apk
) na urządzeniu DUT:extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip cd android-cts-verifier adb install -r -g CtsVerifier.apk
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:
- Na urządzeniu testowym otwórz menu Ustawienia.
- Znajdź sekcję NFC lub Połączone urządzenia.
- Upewnij się, że przełącznik NFC jest włączony.
Umieść chip NFC w czytniku NFC telefonu:
- Uzyskaj chip NFC PN532. Zalecamy urządzenie All-In-One PN532, które nie obsługuje technologii BLE.
- Podłącz układ NFC PN532 do hosta z Linuksem za pomocą kabla USB.
- Umieść układ NFC PN532 nad czytnikiem NFC telefonu, tak jak na ilustracji:
Rysunek 1. Umieszczenie układu NFC.
Konfigurowanie środowiska testowego
Aby skonfigurować środowisko testowe, wykonaj te czynności:
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ę plikulibtinfo.so.6
:mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
Skonfiguruj miejsce testowe, ustawiając w
MultiDevice/config.yml
identyfikatory szeregowe czytnika DUT i czytnika PN532 NFC: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:
Otwórz aplikację CTS-V i kliknij Testy NFC:
Rysunek 2. Aplikacja CTS-V.
Pojawi się okno z listą przypadków testowych:
Rysunek 3. Przypadki testowe aplikacji CTS-V.
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:
Rysunek 4. Wyniki testu CTS-V.
Jeśli widzisz jakieś błędy oznaczone na czerwono, uruchom ponownie nieudane testy za pomocą tego polecenia:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
Gdzie:
TestCaseA
iTestCaseB
to nazwy przypadków testowych widoczne w tabeli 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"