Auf dieser Seite finden Sie eine Anleitung für die Verwendung von CTS-Verifier-Mehrgerätetests (CTS-V) für Android 16 und höher.
Hostseitige Tests für mehrere Geräte einrichten
In diesem Abschnitt wird erläutert, wie Sie Tests für mehrere Geräte einrichten.
- Ihr Computer muss die Betriebssystemanforderungen für CTS erfüllen.
- Führen Sie die Schritte 2 und 5 unter Desktopsoftware installieren aus, um sicherzustellen, dass adb, AAPT2 und Python korrekt auf Ihrem Computer installiert sind.
Bereiten Sie zwei übereinstimmende Testgeräte (DUTs) vor, auf denen jeweils CTS-V eingerichtet ist.
- Informationen zum Einrichten eines DUT finden Sie unter DUT einrichten.
- Eine Anleitung zum Einrichten von CTS-V finden Sie unter Einrichtung.
Wenn Sie ein anderes Modul als NFC testen, folgen Sie der Anleitung unter Standardtests mit zwei Geräten einrichten.
- Für NFC-Tests folgen Sie der Anleitung unter NFC-Tests einrichten.
Wenn Sie das CDM-Modul testen, folgen Sie zusätzlich zur Standardeinrichtung mit zwei Geräten der Anleitung unter CDM-Tests einrichten.
Standardtests mit zwei Geräten einrichten
Für die Standardeinrichtung mit zwei Geräten:
- Platzieren Sie zwei übereinstimmende Android-Testgeräte etwa 20 cm voneinander entfernt.
Legen Sie beide Geräte in eine Abschirmbox, um eine saubere Umgebung zu schaffen.
Optional: Richten Sie einen OTA-Sniffer für die WLAN-Fehlerbehebung ein.
NFC-Tests einrichten
Für NFC-Tests wird eine DUT und ein PN532-NFC-Chip verwendet.
So richten Sie NFC-Tests ein:
- Kaufen Sie einen PN532-NFC-Chip. Wir empfehlen den All-in-One PN532.
Rufen Sie auf dem Testgerät die Einstellungen auf.
Aktivieren Sie NFC.
Positionieren Sie den NFC-Chip so:
Positionieren Sie bei Smartphones den NFC-Leser des Prüflings wie in Abbildung 1 gezeigt:
Abbildung 1: Position des NFC-Chips
Bei anderen Gerätetypen platzieren Sie den Chip neben der NFC-Antenne des Geräts.
Schließen Sie den PN532-NFC-Chip über ein USB-Kabel an Ihre Teststation an.
CDM-Tests einrichten
Das Verhalten des test_permissions_sync()
-Testfalls hängt vom Buildtyp der Geräte ab, auf denen der Test ausgeführt wird. Es ist wichtig, dass sowohl debugfähige (userdebug oder eng) als auch nicht debugfähige (user) Builds von OEMs getestet werden und dass die Tests für beide bestanden werden.
Ausnahme
Gemäß der CDD-Klausel für die Implementierung der Berechtigungssynchronisierungs-API muss die API nur in der Lage sein, Daten über einen sicheren Kanal zwischen Geräten zu übertragen. Da die Implementierung sicherer Kanäle keine CDD-Compliance-Anforderung ist, kann dieser Test bei nicht debuggbaren (Nutzer-)Builds übersprungen werden. Das ist aber nur möglich, wenn Sie die Unterstützung der Funktion zur Synchronisierung von CDM-Berechtigungen deaktivieren möchten.
Die Tests müssen in debugfähigen Builds ausnahmslos erfolgreich sein.
Voraussetzungen für Tests mit nicht debuggbaren Builds
Wenn Sie nicht von den vorherigen Ausnahmeklauseln ausgenommen sind, müssen die folgenden Voraussetzungen erfüllt sein.
Der sichere Kanal verwendet AVF (AttestationVerificationFramework
), um die Vertrauenswürdigkeit der Hardware zu überprüfen. Von beiden Parteien erstellte Attestationen enthalten mehrere Informationen zu sich selbst, um sicherzustellen, dass keine nicht autorisierten Änderungen an ihrem System vorgenommen wurden. AVF prüft während des Überprüfungsprozesses die folgenden Status:
- Das Gerät hat Zugriff auf das Internet.
- Das Gerät verwendet den verifizierten Start und der Build muss mit einem Release-Schlüssel und nicht mit einem Entwicklerschlüssel signiert sein.
- Der Bootloader des Geräts ist gesperrt. Eine ausführliche Anleitung finden Sie unter Bootloader sperren.
- Die Patchebenen für das Betriebssystem, die wichtigsten Boot- und die wichtigsten Anbieter-Patches liegen innerhalb von 12 Monaten. Verwenden Sie keine Builds, die älter als ein Jahr sind.
Die Geräteattestierung wird von einem der vom Anbieter genehmigten Stammzertifikate unterstützt. Geben Sie Ihre vertrauenswürdigen Root-Zertifikate im
vendor_required_attestation_certificates.xml
-Ressourcen-Overlay an.
Hostseitige Mehrgerätetests ausführen (AOSP 16 oder höher)
CTS Verifier 16 unterstützt hostseitige Mehrgerätetests. Diese Tests können mithilfe automatisierter Scripts auf dem Host ausgeführt werden, anstatt den manuellen Testvorgang auf dem Gerät durchzuführen. Nach jedem Test werden die Ergebnisse automatisch in die DUT hochgeladen und in der CTS Verifier App angezeigt.
In diesem Abschnitt wird beschrieben, wie Sie die hostseitigen Mehrgerätetests ausführen.
Mehrgerätetests ausführen
So führen Sie einen Test mit mehreren Geräten durch:
Starten Sie auf Ihrer Test-Workstation die
cts-v-host
-Konsole aus dem Verzeichnis, in dem das CTS-V-Zip-Paket entpackt wurde:./android-cts-verifier/android-cts-v-host/tools/cts-v-host-tradefed
Klicken Sie in der CTS Verifier App auf der DUT auf Host-Tests. Abbildung 2 zeigt die hostseitigen Tests in der CTS-Verifier-App:
Abbildung 2: Hostseitige Mehrgerätetests in der CTS Verifier App
Eine Liste der hostseitigen Multigeräte-Testmodule wird angezeigt.
Geben Sie den Namen des Testmoduls an, das Sie ausführen möchten. Das Modul „CompanionDeviceManager“ wird beispielsweise als CtsCompanionDeviceManagerMultiDeviceTestCases aufgeführt.
Führen Sie in der cts-v-host-Konsole den folgenden Befehl aus: Hinweis: Wenn Sie in der CTS Verifier App auf ein hostseitiges Modul tippen, wird keine Liste der einzelnen Testfälle angezeigt. Stattdessen werden die Testfallergebnisse automatisch in die Benutzeroberfläche eingefügt, nachdem das Modul auf dem Host ausgeführt wurde.
Führen Sie in der xTS-Konsole den folgenden Befehl aus:
run cts-v-host -m test_module_name
Beispiel:
run cts-v-host -m CtsCompanionDeviceManagerMultiDeviceTestCases
Nachdem die Tests in der xTS-Konsole abgeschlossen sind, werden die Ergebnisse in der CTS Verifier App angezeigt. Tests, die grün markiert sind, wurden bestanden. Tests, die rot markiert sind, sind fehlgeschlagen. Abbildung 3 zeigt Beispielergebnisse für die CtsCompanionDeviceManager-Tests:
Abbildung 3: Hostseitige Testergebnisse für mehrere Geräte in der CTS Verifier App
Fehlerbehebung bei Tests für mehrere Geräte
In diesem Abschnitt finden Sie Hilfe zur Fehlerbehebung bei möglichen Problemen.
Fehlerbehebung: Keine Antwort für „GetFirmwareVersion“ bei NFC-Tests
Wenn Sie während der Mehrgerätetests die Meldung verify_firmware_version RuntimeError: No response
for GetFirmwareVersion
erhalten, können die Tests nicht auf das PN532-NFC-Board zugreifen.
Um dieses Problem zu beheben, ermitteln Sie den seriellen Pfad, der vom PN532-NFC-Board auf Ihrem Host verwendet wird, z. B. dev/ttyUSB1
, und geben Sie ihn dann manuell mit dem Argument --module-arg
in der Konsole an:
run cts-v-host -m CtsNfcHceMultiDeviceTestCases --module-arg CtsNfcHceMultiDeviceTestCases:pn532_serial_path:/dev/ttyUSB1
Fehlermeldung „Transaktion fehlgeschlagen“ bei NFC-Tests beheben
Wenn Sie die Meldung Transaction failed, check device logs for more
information.
für alle NFC-Testfälle erhalten, kann das daran liegen, dass der NFC-Chip des DUT den PN532 nicht erkennt.
Wenn mehrere Geräte mit dem Host verbunden sind und einige davon kein PN532 haben, wurde möglicherweise die falsche DUT ausgewählt. Weitere Informationen finden Sie unter NFC-Tests einrichten.
Führen Sie einen der folgenden Schritte aus, um das Problem zu beheben:
Legen Sie die richtige Seriennummer der DUT in Ihrem hostseitigen Testbefehl mit dem Flag
-s
fest.Trennen Sie alle Geräte, die nicht zum DUT gehören, vom Host.
CDM-Testfall test_permissions_sync
wird ignoriert
Wenn der Test auf Geräten ausgeführt wird, die nicht debuggt werden können, prüfen Sie, ob Sie ausgenommen sind. Andernfalls müssen beide Geräte die Voraussetzungen erfüllen.