CTS-V-Tests ausführen

Die Android Compatibility Test Suite Verifier App (CTS‑Prüfung) ergänzt die Compatibility Test Suite (CTS). Während mit der CTS APIs und Funktionen geprüft werden, die automatisiert werden können, bietet die CTS‑Prüfung Tests für APIs und Funktionen, die auf einem stationären Gerät nicht ohne manuelle Eingabe oder Positionierung getestet werden können, z. B. Audioqualität, Touchscreen, Beschleunigungsmesser und Kamera.

Voraussetzungen

Bevor Sie die CTS‑Prüfung ausführen, benötigen Sie folgende Geräte:

  • Ein Android-Gerät, dessen Android API-Kompatibilität durch Bestehen der CTS bestätigt wurde. Dies ist das zu testende Gerät.
  • Einen Linux-Computer mit einem USB 2.0-kompatiblen Anschluss. Alle Verbindungen zum zu testenden Gerät werden über diesen Anschluss hergestellt.
  • Ein zweites Android-Gerät mit einer bekannten kompatiblen Bluetooth-, Wi-Fi Direct-, Wi-Fi Aware-, UWB- (wenn das zu testende Gerät UWB unterstützt) und NFC-Host-Card-Emulation (HCE)-Implementierung.
  • Einen WLAN-Router, der mit einem Zugangspunktnamen und einem Passwort konfiguriert ist. Der Router sollte die Möglichkeit haben, die Internetverbindung zu trennen, ohne ausgeschaltet zu werden.

Halten Sie außerdem die Stative, Gerätehalter und vorab gemessenen Entfernungen bereit, die für die Tests zur Entfernungsmessung (Näherung) für UWB, Wi-Fi NAN und Bluetooth RSSI erforderlich sind. Weitere Informationen finden Sie unter Anwesenheit kalibrieren.

UICC-Anforderungen für NFC-Tests

Die CTS‑Prüfung umfasst die folgenden NFC-Testfälle:

  • Field-off (verwendet Transaktionsdaten von 0x54)
  • De-select (verwendet Transaktionsdaten von 0x52)
  • HCI-Befehl (0025000000) (verwendet Transaktionsdaten von 0x02)

Für Tests von Transaktionsereignissen sind zwei Geräte erforderlich, von denen eines eine SecureElement-UICC mit den folgenden Zugriffsregeln haben muss:

  • CTS‑Prüfung 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 (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.

Einrichtung

Für Android 17 ist ein zusätzlicher CTS‑V-Einrichtungsschritt erforderlich, um die Standardbrowserrolle zu gewähren.

Ändern Sie den Systemnavigationsmodus des Testgeräts wie folgt in den Modus mit drei Schaltflächen:

  1. Öffnen Sie die Einstellungen.
  2. Rufen Sie System > Interaktion > Navigationsmodus auf.
  3. Wählen Sie einen beliebigen schaltflächenbasierten Navigationsmodus aus. Der Modus mit drei Schaltflächen wird bevorzugt, falls verfügbar.

So richten Sie die Testumgebung für die CTS‑Prüfung ein:

  1. Auf dem Linux-Computer:

    1. Führen Sie vor der Installation der CTS‑Prüfung den folgenden Befehl aus, um den Zugriff auf Nicht-SDK-Schnittstellen zu ermöglichen:
    adb shell settings put global hidden_api_policy 1
    
    1. Installieren Sie Android Studio.

    2. Laden Sie die CTS‑Prüfung APK für die zu testende Android-Version herunter.

  2. Verbinden Sie das zu testende Gerät mit dem Linux-Computer.

  3. Installieren Sie CtsVerifier.apk über ein Terminal auf dem Linux-Computer auf dem zu testenden Gerät:

    adb install -r -g CtsVerifier.apk
    
  4. Führen Sie für 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
    
  5. Führen Sie für Android 11 und höher den folgenden Befehl aus, um zu ermöglichen, dass Berichte in einem selbst definierten Verzeichnis unter dem externen Verzeichnis der obersten Ebene des Geräts gespeichert werden:

    adb shell appops set com.android.cts.verifier MANAGE_EXTERNAL_STORAGE 0
    
  6. Führen Sie für Android 13 und höher den folgenden Befehl aus, um den Test-API-Zugriff für die CTS‑Prüfung zu ermöglichen:

    adb shell am compat enable ALLOW_TEST_API_ACCESS com.android.cts.verifier
    
  7. Führen Sie für Android 14 und höher den folgenden Befehl aus, um der App die Berechtigung zum Einschalten des Bildschirms zu erteilen:

    adb shell appops set com.android.cts.verifier TURN_SCREEN_ON 0
    
  8. Führen Sie für Android 17 und höher den folgenden Befehl aus, um der CTS‑Prüfung die Standardbrowserrolle zu gewähren:

    adb shell 'cmd role add-role-holder --user $(am get-current-user) android.app.role.BROWSER com.android.cts.verifier'
    
  9. Prüfen Sie, ob auf dem zu testenden Gerät das Systemdatum und die Systemzeit richtig eingestellt sind.

CTS‑Prüfung ausführen

Starten Sie die CTS‑Prüfung App, indem Sie auf dem zu testenden Gerät auf das Symbol „CTS‑Prüfung“ tippen.

CTS‑Prüfungssymbol im Launcher

Abbildung 1 : Symbol der CTS‑Prüfung

In der App werden mehrere Testsätze für die manuelle Überprüfung angezeigt.

CTS‑Prüfung – Menü mit Tests

Abbildung 2 : Menü der CTS‑Prüfung mit Tests

Jeder Test enthält unten auf dem Bildschirm eine Reihe gemeinsamer Elemente.

Tool zur Überprüfung der Streamingvideoqualität

Abbildung 3 : Testbildschirm mit hervorgehobenen gemeinsamen Testelementen

  • Bestanden (✓): Tippen Sie darauf, wenn das zu testende Gerät die Testanforderungen gemäß der Anleitung unter „Info“ erfüllt.
  • Info (?): Tippen Sie darauf, um die Testanleitung aufzurufen. Wird auch automatisch angezeigt, wenn ein Test zum ersten Mal geöffnet wird.
  • Nicht bestanden (!): Tippen Sie darauf, wenn das zu testende Gerät die Testanforderungen gemäß der Anleitung unter „Info“ nicht erfüllt.

Für einige Tests, z. B. den USB-Zubehörmodus, sind zusätzliche Testeinrichtungen und Anleitungen erforderlich, wie in den folgenden Abschnitten beschrieben.

USB-Zubehörmodus für Android 8.0 und höher testen

CTS‑Prüfung für USB-Zubehör

Abbildung 4 : Testverfahren für USB-Zubehör für Android 8.0 und höher

CTS‑Prüfung für USB-Zubehör

Abbildung 5 : USB-Zubehörmodus für Android 8.0 und höher testen

USB-Zubehörmodus für Android 7.x und niedriger testen

Für den USB-Zubehörtest ist ein Linux-Computer erforderlich, auf dem das USB-Desktop-Programm (Host) ausgeführt wird.

  1. Verbinden Sie das zu testende Gerät mit dem Linux-Computer.
  2. Führen Sie auf dem Computer das Programm cts-usb-accessory aus dem CTS‑Prüfungspaket aus:

    ./cts-usb-accessory
    
  3. Warten Sie, bis auf dem zu testenden Gerät ein Dialogfeld angezeigt wird, und tippen Sie dann auf OK.

    CTS‑Prüfung für USB-Zubehör

    Abbildung 6 : USB-Zubehörtest

  4. Rufen Sie auf dem zu testenden Gerät in der CTS‑Prüfung den USB-Zubehörtest auf.

  5. Prüfen Sie auf dem Computer die Ausgabe der Konsole. 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
    

CTS‑Prüfung für alternative Modi ausführen

Ab den CTS 10 R6- und CTS 11 R2-Releases unterstützt die CTS‑Prüfung die Tests, die für Geräte mit alternativen Modi oder für Geräte mit mehr als einem Bildschirmmodus erforderlich sind.

Oben in der Hauptlistenansicht der CTS‑Prüfung wird eine Schaltfläche angezeigt, mit der Nutzer zwischen dem aufgeklappten und dem zusammengeklappten Anzeigemodus wechseln können. Die CTS‑Prüfung zeigt die erforderlichen Tests für den ausgewählten Anzeigemodus an. Um die alternativen Modi in der CTS‑Prüfung auszuführen, muss die Schaltfläche in den entsprechenden Anzeigemodus umgeschaltet und die Liste der angezeigten Tests ausgeführt werden.

CTS-V-Umschalter

Abbildung 7 : Umschalter der CTS‑Prüfung

Die Ergebnisse der Tests im zusammengeklappten Modus werden im selben Bericht wie die Tests im aufgeklappten Modus aufgezeichnet. Um jedes Testergebnis dem jeweiligen Testsatz zuzuordnen, wird jedem Testnamen im zusammengeklappten 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. Berichtsnamen werden automatisch mit einem Zeitstempel versehen, der auf der Systemzeit des zu testenden Geräts basiert.

  1. Wenn Sie Ihre Testergebnisse speichern möchten, tippen Sie oben in der Liste der Testkategorien auf das Symbol „Speichern“ (Diskette).

  2. Warten Sie, bis ein Dialogfeld mit dem Pfad zum gespeicherten Bericht angezeigt wird (z. B. /sdcard/verifierReports/ctsVerifierReport-date-time.zip), und notieren Sie sich den Pfad.

  3. Verbinden Sie das zu testende Gerät mit dem Linux-Computer.

  4. Laden Sie über die Android SDK-Installation auf dem Linux-Computer Berichte vom verbundenen Gerät herunter. Verwenden Sie dazu adb shell content read oder adb pull CTSVerifierReportPath.

    • Verwenden Sie für Android 7.x und höher den folgenden Befehl, um alle Berichte herunterzuladen:

      adb pull /sdcard/verifierReports
      
    • Verwenden Sie für Android 6.0 und niedriger den folgenden Befehl, um alle Berichte herunterzuladen:

      adb pull /mnt/sdcard/ctsVerifierReports/
      
    • Wenn Sie Android 10 und höher implementieren, Automotive und Geräte, die als sekundärer Nutzer ausgeführt werden, verwenden, laden Sie den neuesten Bericht mit dem folgenden Befehl herunter:

      adb shell content read --user <var>CURRENT_USER</var> --uri content://com.android.cts.verifier.testresultsprovider/reports/latest > report.zip
      

      So listen Sie alle Berichte auf, die auf dem verbundenen Gerät verfügbar sind:

        adb shell content query --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports
        ```
      
      To download a report from the list, you can specify the Row ID or
      filename. For example:
      
      ```shell
        adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports/0 > report.zip
        ```
      
      ```shell
        adb shell content read --user CURRENT_USER --uri content://com.android.cts.verifier.testresultsprovider/reports ctsVerifierReport-date-time.zip > report.zip
        ```
      
  5. Wenn Sie Ergebnisse vom Typ „Bestanden“ oder „Nicht bestanden“ löschen möchten, wählen Sie die Ergebnisse in der CTS‑Prüfung aus und wählen Sie Menü > Löschen aus.