Automatisierte Tests ausführen (Android 11 oder höher)

Es gibt zwei Möglichkeiten, automatisierte CTS-Tests auszuführen:

  • Trade Federation ist ein App- und Testframework, mit dem Sie Tests über die Befehlszeile ausführen können. Mit dem Framework können Sie Tests mit der Annotation @Test versehen. Die App findet und führt diese Tests dann aus.

  • OmniLab Android Test Station ist eine App, mit der Sie Tests in einer grafischen Benutzeroberfläche ausführen können.

Auf dieser Seite wird erläutert, wie Sie automatisierte Tests mit Trade Federation ausführen. Eine Anleitung zum Ausführen von Tests mit OmniLab Android Test Harness finden Sie unter OmniLab Android Test Station.

Alle automatisierten CTS-Tests ausführen

Trade Federation enthält die CTS-Konsole, eine Befehlszeilenschnittstelle zum Ausführen von Tests. So führen Sie die gesamte automatisierte CTS-Testsuite aus:

  1. Folgen Sie der Anleitung unter Automatisierte CTS-Tests einrichten.
  2. Starten Sie auf Ihrer Testworkstation die CTS-Konsole, indem Sie das Skript cts-tradefed aus dem Ordner ausführen, in dem das CTS-Paket entpackt wurde:

    ./android-cts/tools/cts-tradefed
    

    In der CTS-Konsole wird ein Cursor angezeigt, über den Sie CTS-Befehle eingeben können (cts-tradefed >).

  3. Der Testplan cts enthält alle automatisierten CTS-Tests. Führen Sie den folgenden Befehl aus, um den Testplan cts auszuführen:

    run cts
    

    Die automatisierten CTS-Tests werden ausgeführt. Wichtige Hinweise:

    • Android 13 und höher unterstützen Tests auf mehreren Geräten. Diese Tests werden nur automatisch ausgeführt, wenn Sharding verwendet wird. Weitere Informationen zu Sharding finden Sie unter Ausführungszeit von Tests verbessern. Wenn Sie diese Tests manuell ausführen möchten, lesen Sie Tests auf mehreren Geräten ausführen.

    • Drücken Sie bei der Ausführung von CTS immer Strg + C , um die vorhandene CTS-Konsole zu beenden, und starten Sie sie dann neu.

    • Sie können nicht mehrere CTS-Versionen auf einem einzelnen Host ausführen, da jede mit einem vorhandenen Open Location Code (OLC)-Server geöffnet wird.

  4. Testergebnisse ansehen. Weitere Informationen finden Sie unter CTS-Ergebnisse interpretieren.

  5. Wenn Sie den Test zum ersten Mal ausführen, können Fehler auftreten, die außerhalb Ihrer Kontrolle liegen. Beispielsweise kann die Netzwerkverbindung langsam oder das GPS-Signal schwach sein. Wiederholen Sie die Tests, bis alle Testmodule abgeschlossen sind und die Anzahl der fehlgeschlagenen Tests in den letzten beiden Wiederholungsversuchen gleich ist:

    run retry --retry session_number`
    
  6. Wenn die Testfehler bei den Wiederholungen gleich bleiben, konzentrieren Sie sich auf das Debuggen der verbleibenden fehlgeschlagenen Tests. Informationen zur Fehlerbehebung bei Testergebnissen finden Sie unter Testfehler priorisieren und Fehlerbehebung bei CTS-Tests.

CTS für Geräte mit mehreren Bildschirmen ausführen

Wenn auf Ihrem Gerät Android 11 oder 12 ausgeführt wird und es mehrere Bildschirme hat, müssen Sie den Testplan cts-foldable separat ausführen:

run cts-foldable

Bestandene oder fehlgeschlagene Testfälle für den alternativen Bildschirmmodus werden mit dem Wert aus display_mode angehängt, z. B. testcase1[display_mode=0].

Tests auf mehreren Geräten ausführen (Android 15 oder niedriger)

Führen Sie den folgenden Befehl aus, um den Testplan cts-multidevice auszuführen:

run cts-multidevice

Einzelne Testpläne ausführen

Anstatt alle Testpläne gleichzeitig auszuführen, können Sie auch einzelne Testpläne ausführen. So sparen Sie Zeit und können sich auf eine bestimmte Gruppe von Tests konzentrieren. So führen Sie einen einzelnen Testplan aus:

  1. Ermitteln Sie den Namen des Testplans, den Sie ausführen möchten, indem Sie den Befehl list modules ausführen.

  2. Führen Sie den Testplan aus:

    run cts --plan test_module_or_plan_name
    

Ausführungszeit von Tests verbessern

Wenn Sie die Testausführungszeit verbessern möchten, können Sie Tests auf mehrere Geräte verteilen. Für Sharding muss der Host mindestens zwei Geräte verbinden. Für eine effiziente Ausführung werden jedoch sechs oder mehr Geräte empfohlen.

So verteilen Sie Tests unter Android 11 oder höher:

run cts --shard-count number_of_shards

Außerdem können Sie die Ausführungszeit von Tests verbessern, indem Sie vor der Ausführung der Tests zur Validierung den CTS-Befehl run cts-dev verwenden. Mit diesem Befehl werden Vorbedingungen, die Erfassung von Geräteinformationen und alle Systemstatusprüfungen übersprungen. Außerdem werden die Tests nur für eine einzelne ABI ausgeführt.