Der Android Compatibility Test Suite Verifier (CTS Verifier) ergänzt die Compatibility Test Suite (CTS). Während der CTS APIs und Funktionen prüft, die automatisiert werden können, bietet der CTS-Verifier Tests für APIs und Funktionen, die auf einem stationären Gerät ohne manuelle Eingabe oder Positionierung nicht getestet werden können, z. B. Audioqualität, Touchscreen, Beschleunigungsmesser und Kamera.
Voraussetzungen
Bevor Sie CTS Verifier ausführen, müssen Sie Folgendes haben:
- Android-Gerät, das die Android API-Kompatibilität durch Bestehen des CTS bestätigt hat Das ist das Testgerät.
- Linux-Computer mit USB 2.0-kompatiblem Anschluss Alle Verbindungen zum DUT laufen über diesen Anschluss.
- Zweites Android-Gerät mit einer bekannten kompatiblen Implementierung für Bluetooth, Wi-Fi Direct, Wi-Fi Aware, UWB (wenn der DUT UWB unterstützt) und Implementierung der NFC-Hostkartenemulation (HCE).
- Ein WLAN-Router, der mit dem Namen und dem Passwort des Zugangspunkts konfiguriert ist. Der Router sollte die Möglichkeit haben, die Internetverbindung zu trennen, aber nicht ausgeschaltet werden.
Bereiten Sie auch die Stative, Gerätehalter und die vorab gemessenen Entfernungen für die Tests zur Entfernungsmessung (Nähe) für UWB, WLAN-NAN und Bluetooth-RSSI vor. Weitere Informationen finden Sie unter Präsenzkalibrierung.
UICC-Anforderungen für NFC-Tests
CTS Verifier enthält die folgenden NFC-Testfälle:
- Feld deaktiviert (verwendet Transaktionsdaten von 0x54)
- Auswahl aufheben (Transaktionsdaten von 0x52 werden verwendet)
- HCI-Befehl (0025000000) (verwendet Transaktionsdaten von 0x02)
Für Transaktionsereignistests sind zwei Geräte erforderlich, von denen eines ein SecureElement-UICC mit den folgenden Zugriffsregeln haben muss:
- CtsVerifier-APK-Hash: 61:ED:37:7E:85:D3:86:A8:DF:EE:6B:86:4B:D8:5B:0B:FA:A5:AF:81
- Autorisierte Anwendungs-ID (Authorized Application Identifier, AID) für den Zugriff auf NFC-Ereignisse: 0xA000000476416E64726F696443545341
Auf der Emulatorseite wird erwartet, dass das Transaktionsereignis die entsprechende Aktivität in den Vordergrund rückt.
Einrichten
Ändern Sie den Systemnavigationsmodus des Testgeräts in den Drei-Schaltflächen-Modus:
- Öffnen Sie die Einstellungen.
- Gehen Sie zu System > Gesten und Bewegungen > Systemsteuerung.
- Wählen Sie einen beliebigen Schaltflächennavigationsmodus aus, vorzugsweise den Modus mit drei Schaltflächen, sofern verfügbar.
So richten Sie die CTS-Verifier-Testumgebung ein:
Auf dem Linux-Computer:
Führen Sie den folgenden Befehl aus, bevor Sie den CTS-Verifier installieren, um den Zugriff auf nicht SDK-Schnittstellen zuzulassen.
adb shell settings put global hidden_api_policy 1
Installieren Sie Android Studio.
Laden Sie die CTS Verifier APK für die zu testende Android-Version herunter.
Schließen Sie das DUT an den Linux-Computer an.
Installieren Sie
CtsVerifier.apk
über ein Terminal auf dem Linux-Computer auf der DUT.adb install -r -g CtsVerifier.apk
Führen Sie unter Android 10 und höher den folgenden Befehl aus, um der App die Berechtigung zum Erstellen des Berichts zu erteilen.
adb shell appops set com.android.cts.verifier android:read_device_identifiers allow
Führen Sie unter Android 11 und höher den folgenden Befehl aus, um zuzulassen, dass Berichte in einem selbst definierten Verzeichnis im externen Stammverzeichnis des Geräts gespeichert werden.
adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
Führen Sie unter Android 13 und höher den folgenden Befehl aus, um den Test-API-Zugriff für CTS Verifier zuzulassen.
adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
Führen Sie unter Android 14 und höher den folgenden Befehl aus, um der App die Berechtigung zum Einschalten des Displays zu erteilen.
adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
Achten Sie darauf, dass auf dem DUT das Systemdatum und die Systemzeit korrekt eingestellt sind.
CTS-Verifier ausführen
Starten Sie die CTS Verifier-Anwendung, indem Sie auf dem DUT auf das CTS Verifier-Symbol tippen.
Abbildung 1: CTS Verifier-Symbol
In der App werden mehrere Testsätze angezeigt, die zur manuellen Überprüfung verfügbar sind.
Abbildung 2. CTS Verifier-Menü mit Tests
Jeder Test enthält unten auf dem Bildschirm eine Reihe gemeinsamer Elemente.
Abbildung 3 Testbildschirm mit hervorgehobenen gängigen Testelementen
- Pass (✓): Tippen Sie auf diese Option, wenn das DUT die Testanforderungen gemäß der Infoanleitung erfüllt.
- Info (?): Tippen Sie darauf, um die Testanleitung aufzurufen. Erscheint auch automatisch, wenn ein Test zum ersten Mal geöffnet wird.
- Fehlgeschlagen (!): Tippen Sie auf diese Option, wenn das DUT die Testanforderungen gemäß der Infoanleitung nicht erfüllt.
Für einige Tests, z. B. den USB-Zubehörmodus und die Kamerakalibrierung, sind zusätzliche Testkonfigurationen und -anleitungen erforderlich. Weitere Informationen finden Sie in den folgenden Abschnitten.
USB-Zubehörmodus für Android 8.0 und höher testen
Abbildung 4 Testverfahren für USB-Zubehör für Version 8.0 und höher
Abbildung 5: USB-Zubehörmodus für Android 8.0 und höher testen
USB-Zubehörmodus für 7.x und niedriger testen
Für den Test des USB-Zubehörs ist zum Ausführen des USB-Desktopcomputers (Hosts) ein Linux-Computer erforderlich.
- Schließen Sie das DUT an den Linux-Computer an.
Führen Sie auf dem Computer das
cts-usb-accessory
-Programm aus dem CTS-Verifier-Paket aus:./cts-usb-accessory
Warten Sie, bis auf dem DUT eine Pop-up-Nachricht angezeigt wird, und wählen Sie dann OK aus.
Abbildung 6 Test für USB-Zubehör
Rufen Sie den USB-Test für Zubehör in der CTS Verifier App auf dem DUT auf.
Sehen Sie sich auf dem Computer die Ausgabe der Konsole an. Beispielausgabe:
CTS USB Accessory Tester Found possible Android device (413c:2106) - attempting to switch to accessory mode... Failed to read protocol versionfigure3 Found Android device in accessory mode (18d1:2d01)... [RECV] Message from Android device #0 [SENT] Message from Android accessory #0 [RECV] Message from Android device #1 [SENT] Message from Android accessory #1 [RECV] Message from Android device #2 [SENT] Message from Android accessory #2 [RECV] Message from Android device #3 [SENT] Message from Android accessory #3 [RECV] Message from Android device #4 [SENT] Message from Android accessory #4 [RECV] Message from Android device #5 [SENT] Message from Android accessory #5 [RECV] Message from Android device #6 [SENT] Message from Android accessory #6 [RECV] Message from Android device #7 [SENT] Message from Android accessory #7 [RECV] Message from Android device #8 [SENT] Message from Android accessory #8 [RECV] Message from Android device #9 [SENT] Message from Android accessory #9 [RECV] Message from Android device #10 [SENT] Message from Android accessory #10
Sichtfeld der Kamera kalibrieren
Verwenden Sie das Kalibrierungsverfahren für das Sichtfeld, um das Sichtfeld des Geräts schnell mit mittlerer Genauigkeit zu bestimmen.
Richten Sie die Testumgebung ein:
- Drucken Sie die Zieldatei calibration-pattern.pdf im Format 27,9 × 43,2 cm oder A3 aus.
- Befestigen Sie das gedruckte Muster auf einer starren Rückseite.
Richten Sie die Kamera und das ausgedruckte Ziel wie im folgenden Diagramm dargestellt aus.
Abbildung 7. Kameradruckziel
Legen Sie die Zielbreite fest:
- Messen Sie den Abstand (in Zentimetern) zwischen den durchgezogenen Linien auf dem Zielmuster, um Abweichungen beim Drucken zu berücksichtigen (ca. 38 cm).
- Starten Sie die Kalibrierungsanwendung.
- Drücken Sie die Schaltfläche „Einrichtung“ und wählen Sie Markierungsabstand aus.
- Messen Sie die Entfernung zum Zielmuster und geben Sie sie ein (ca. 100 cm).
- Drücke die Schaltfläche „Zurück“, um zur Kalibrierungsvorschau zurückzukehren.
Prüfen Sie, ob das Gerät und das Ziel wie in der Abbildung dargestellt platziert sind und die richtigen Abstände im Einrichtungsdialogfeld eingegeben wurden. In der Vorschau wird das Bild mit einer vertikalen Linie überlagert. Diese Linie sollte mit der Mittellinie des Zielmusters übereinstimmen. Das transparente Raster kann mit den anderen vertikalen Linien verwendet werden, um sicherzustellen, dass die optische Achse senkrecht zum Ziel ist.
Führen Sie den Kalibrierungstest aus:
- Wählen Sie mit der Auswahl unten links eine Bildauflösung aus und tippen Sie dann auf das Display, um ein Foto aufzunehmen. Der Test wechselt in den Kalibrierungsmodus und das Foto wird mit zwei vertikalen Linien überlagert.
- Genauigkeit bestimmen:
- Wenn die Linien innerhalb weniger Zentimeter mit den vertikalen Linien des Zielmusters übereinstimmen, ist das angegebene Sichtfeld für die ausgewählte Auflösung korrekt.
- Wenn die Linien nicht übereinstimmen, ist das angegebene Sichtfeld ungenau. Passen Sie dazu den Schieberegler unten auf dem Bildschirm an, bis das Overlay möglichst genau mit dem Zielmuster übereinstimmt. Wenn das Overlay und das Zielmusterbild ausgerichtet sind, entspricht das angezeigte Sichtfeld in etwa dem korrekten Wert. Das angegebene Sichtfeld sollte innerhalb von +/-2 Grad vom Kalibrierungswert abweichen.
- Drücken Sie die Schaltfläche „Zurück“ und wiederholen Sie den Kalibrierungstest für alle vom DUT unterstützten Bildauflösungen.
CTS Verifier für alternative Modi ausführen
Ab den Releases CTS 10 R6 und CTS 11 R2 unterstützt CTS Verifier die für Geräte mit alternativen Modi oder für Geräte mit mehreren Bildschirmmodi erforderlichen Tests.
Oben in der Hauptlistenansicht in CTS Verifier wird eine Schaltfläche angezeigt, mit der Nutzer zwischen dem aufgeklappten und dem zusammengeklappten Displaymodus wechseln können. CTS Verifier zeigt die erforderlichen Tests für den ausgewählten Anzeigemodus an. Um die alternativen Modi in CTS Verifier auszuführen, muss für die Schaltfläche der entsprechende Anzeigemodus aktiviert und die Liste der angezeigten Tests ausgeführt werden.
Die Ergebnisse der aufgeklappten Tests werden zusammen mit den aufgeklappten Tests im selben Bericht erfasst. Um jedes Testergebnis zu identifizieren, aus dem der Testsatz stammt, wird jedem Testnamen im minimierten Modus ein Suffix hinzugefügt.
<Test result="fail" name="com.android.cts.verifier.deskclock.DeskClockTestsActivity[folded]">
<RunHistory subtest="CREATE_ALARM[folded]">
<Run start="1594176663973" end="1594176665841" isAutomated="false" />
</RunHistory>
</Test>
Ergebnisse exportieren
Nach Abschluss aller Tests können Sie die Ergebnisse als Bericht speichern und auf einen Computer herunterladen. Die Berichtsnamen werden automatisch mit einem Zeitstempel versehen, der auf der Systemzeit des DUT basiert.
Wenn Sie Ihre Testergebnisse speichern möchten, tippen Sie oben in der Liste der Testkategorien auf das Speichersymbol (Festplatte).
Warten Sie auf eine Pop-up-Meldung, die den Dateipfad zum gespeicherten Bericht anzeigt (z. B.
/sdcard/verifierReports/ctsVerifierReport-date-time.zip
), und notieren Sie den Pfad.Schließen Sie das DUT an den Linux-Computer an.
Laden Sie über die Installation des Android SDK auf dem Linux-Computer Berichte mit
adb shell content read
oderadb pull CTSVerifierReportPath
vom verbundenen Gerät herunter.Bei Android 7.x und höher laden Sie alle Berichte mit dem folgenden Befehl herunter:
adb pull /sdcard/verifierReports
Unter Android 6.0 und niedriger können Sie alle Berichte mit dem folgenden Befehl herunterladen:
adb pull /mnt/sdcard/ctsVerifierReports/
Wenn Sie Android 10 oder höher verwenden, die Automotive API implementieren und Geräte als sekundärer Nutzer ausführen, können Sie den aktuellen Bericht mit dem folgenden Befehl herunterladen:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
So rufen Sie eine Liste aller auf dem verbundenen Gerät verfügbaren Berichte auf:
adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
Wenn Sie einen Bericht aus der Liste herunterladen möchten, können Sie die Zeilen-ID oder den Dateinamen angeben. Beispiel:
adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/ctsVerifierReport-date-time.zip > report.zip
Wenn Sie die Ergebnisse löschen möchten, wählen Sie sie in der CTS Verifier App aus und klicken Sie auf Menü > Löschen.