In diesem Dokument wird erläutert, wie NFC-Tests für mehrere Geräte durchgeführt werden.
Voraussetzungen erfüllen
Führen Sie die folgenden Schritte aus, bevor Sie NFC-Tests mit mehreren Geräten ausführen:
- Bereiten Sie ein Gerät mit Ihrer Android 15-Implementierung vor.
- Beachten Sie die CTS-V-Anforderungen.
- Folgen Sie der Einrichtungsanleitung 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 einen DUT und ein PN532-NFC-Lesegerät für den Test vorzubereiten:
- Verbinden Sie das DUT über USB mit einem Hostcomputer.
- Gewähren Sie dem Host die Berechtigung, über ADB auf die DUT zuzugreifen.
Installieren Sie die CTS Verifier App (
CtsVerifier.apk
) auf dem DUT:extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip cd android-cts-verifier adb install -r -g CtsVerifier.apk
Installieren Sie die für den NFC-Test erforderlichen APKs:
cd MultiDevice adb install -r -g NfcEmulatorTestApp.apk
NFC für das DUT einrichten
Führen Sie die folgenden Schritte aus, um NFC für den DUT einzurichten:
- Rufen Sie auf dem DUT das Menü Einstellungen auf.
- Suchen Sie nach dem Abschnitt NFC oder Verbundene Geräte.
- Achten Sie darauf, dass die NFC-Ein/Aus-Schaltfläche aktiviert ist.
Platzieren Sie einen NFC-Chip auf dem NFC-Lesegerät des Smartphones:
- Besorgen Sie sich einen PN532-NFC-Chip. Wir empfehlen die All-in-One PN532 ohne BLE.
- Schließen Sie den PN532-NFC-Chip über ein USB-Kabel an den Linux-Host an.
- Platzieren Sie den PN532-NFC-Chip wie in der Abbildung unten über dem NFC-Lesegerät des Smartphones.
Abbildung 1. Platzierung des NFC-Chips
Testumgebung einrichten
So richten Sie die Testumgebung ein:
Führen Sie die folgenden Befehle aus, um die Testumgebung einzurichten:
cd MultiDevice source build/envsetup.sh
Mit diesem Befehl wird Python geprüft und die Umgebungsvariable
PYTHONPATH
eingerichtet. Wenn keine Fehler im Terminal ausgegeben werden, ist die Umgebung bereit, die Tests für mehrere Geräte auszuführen.Wenn während der 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.6
umzubenennen:mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
Richten Sie das Testfeld ein, indem Sie die Geräteseriennummern des DUT und des PN532-NFC-Lesegeräts in
MultiDevice/config.yml
festlegen: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:
Abbildung 2. Die CTS-V-App
Das Infofenster mit der Liste der Testfälle wird angezeigt:
Abbildung 3 CTS-V-App-Testfälle
Führen Sie die Tests auf Ihrem Host aus:
MultiDevice$ python3 tools/run_all_tests.py
Nach Abschluss der Tests werden die Testergebnisse in der CTS-V-App aktualisiert. Erfolgreiche Tests sind grün:
Abbildung 4: CTS-V-Testergebnisse.
Wenn Fehler rot markiert sind, verwenden Sie den folgenden Befehl, um die fehlgeschlagenen Tests noch einmal auszuführen:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
Dabei gilt:
TestCaseA
undTestCaseB
sind die Namen der Testfälle, wie sie in CTS-V angezeigt werden.TestFileA
ist 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"