In diesem Dokument wird beschrieben, wie Sie NFC-Tests auf mehreren Geräten ausführen.
Voraussetzungen erfüllen
Bevor Sie NFC-Tests auf mehreren Geräten ausführen, gehen Sie so vor:
- Bereiten Sie ein Gerät mit Ihrer Android 15-Implementierung vor.
- Beachten Sie die CTS-V-Anforderungen.
- Folgen Sie der Einrichtung für CTS-V.
DUT und PN532-NFC-Lesegerät für den Test vorbereiten
Nachdem Sie die vorherigen Schritte abgeschlossen haben, führen Sie die folgenden Schritte aus, um ein DUT und ein PN532-NFC-Lesegerät für den Test vorzubereiten:
- Verbinden Sie das zu testende Gerät über USB mit einem Hostcomputer.
- Gewähren Sie dem Host Berechtigungen für den Zugriff auf das DUT über ADB.
Installieren Sie die CTS Verifier App (
CtsVerifier.apk) auf dem zu testenden Gerät:extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip cd android-cts-verifier adb install -r -g CtsVerifier.apkInstallieren Sie die für den NFC-Test erforderlichen APKs:
cd MultiDevice adb install -r -g NfcEmulatorTestApp.apk
NFC für das zu testende Gerät einrichten
So richten Sie NFC für das zu testende Gerät ein:
- Öffnen Sie auf dem zu testenden Gerät die Einstellungen.
- Suchen Sie nach dem Abschnitt NFC oder Verbundene Geräte.
- Achten Sie darauf, dass der NFC-Schalter aktiviert ist.
Positionieren Sie einen NFC-Chip am NFC-Lesegerät des Smartphones:
- Besorgen Sie sich einen PN532-NFC-Chip. Wir empfehlen die All-In-One-Option PN532 ohne BLE.
- Schließen Sie den PN532-NFC-Chip über ein USB-Kabel an den Linux-Host an.
- Halten Sie den PN532-NFC-Chip über das NFC-Lesegerät des Smartphones, wie im folgenden Bild gezeigt:
Abbildung 1: Position des NFC-Chips.
Testumgebung einrichten
So richten Sie die Testumgebung ein:
Führen Sie diese Befehle aus, um die Testumgebung einzurichten:
cd MultiDevice source build/envsetup.shMit diesem Befehl wird die Python-Version geprüft und die Umgebungsvariable
PYTHONPATHeingerichtet. Wenn keine Fehler im Terminal ausgegeben werden, ist die Umgebung bereit für die Ausführung der Tests auf mehreren Geräten.Wenn zur Laufzeit die Fehlermeldung
libtinfo.so.6: no version information available (required by /bin/sh)angezeigt wird, führen Sie den folgenden Befehl aus, um die Dateilibtinfo.so.6umzubenennen:mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bakRichten Sie das Testfeld ein, indem Sie die Geräte-Seriennummern des DUT und des PN532-NFC-Lesegeräts in
MultiDevice/config.ymlfestlegen:TestBeds: - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv Controllers: AndroidDevice: - serial: "<device-id>" TestParams: pn532_serial_path: "<pn532-serial-path>"
NFC-Tests ausführen
So führen Sie die NFC-Tests aus:
Öffnen Sie die CTS-V App und tippen Sie auf NFC Tests (NFC-Tests):
Abbildung 2: Die CTS-V App.
Das Infofenster mit der Liste der Testläufe wird angezeigt:
Abbildung 3: CTS-V-App-Testläufe
Führen Sie die Tests auf Ihrem Host aus:
MultiDevice$ python3 tools/run_all_tests.pyNach Abschluss der Tests werden die Testergebnisse in der CTS-V-App aktualisiert. Erfolgreiche Tests werden grün dargestellt:
Abbildung 4: Ergebnisse des CTS-V-Tests.
Wenn Fehler rot markiert sind, führen Sie den folgenden Befehl aus, um die fehlgeschlagenen Tests noch einmal auszuführen:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"Dabei gilt:
TestCaseAundTestCaseBsind die Namen der Testläufe, wie sie im CTS-V angezeigt werden.TestFileAist die Testdatei, die die Testläufe enthält.
Beispiel:
python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"