Ab dem 27. März 2025 empfehlen wir, android-latest-release
anstelle von aosp-main
zu verwenden, um AOSP zu erstellen und Beiträge dazu zu leisten. Weitere Informationen finden Sie unter Änderungen am AOSP.
Automatisierte Tests ausführen (Android 11 oder höher)
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
Es gibt zwei Möglichkeiten, automatisierte CTS-Tests auszuführen:
Trade Federation ist ein App- und Test-Framework, mit dem Sie Tests über die Befehlszeile ausführen können. Im Grunde können Sie mit dem Framework Tests mit der @Test
-Anmerkung 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 dem 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:
- Folgen Sie der Anleitung unter Automatisierte CTS-Tests einrichten.
Starten Sie auf Ihrer Test-Workstation die CTS-Konsole, indem Sie das cts-tradefed
-Script 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 >
).
Der Testplan cts
enthält alle automatisierten CTS-Tests. Führen Sie den folgenden Befehl aus, um den cts
-Testplan auszuführen:
run cts
Die automatisierten CTS-Tests werden ausgeführt. Beachten Sie Folgendes:
Android 13 und höher unterstützen Multigerätetests. Diese Tests werden nur dann automatisch ausgeführt, wenn das Sharding verwendet wird. Weitere Informationen zum Sharding finden Sie unter Testausführungszeit verbessern. Wenn Sie diese Tests manuell ausführen möchten, lesen Sie den Hilfeartikel Mehrere Geräte gleichzeitig testen.
Drücken Sie bei der Ausführung von CTS immer Strg + C, um die vorhandene CTS-Konsole anzuhalten und dann noch einmal auszuführen.
Sie können nicht mehrere CTS-Versionen auf einem einzigen Host ausführen, da jede Version mit einem vorhandenen OLC-Server (Open Location Code) geöffnet wird.
Testergebnisse ansehen Weitere Informationen finden Sie unter CTS-Ergebnisse auswerten.
Wenn dies Ihr erster Testlauf ist, können Tests aufgrund von Problemen fehlschlagen, die außerhalb Ihrer Kontrolle liegen. Beispielsweise kann eine Netzwerkverbindung langsam oder ein GPS-Signal schwach sein. Wiederholen Sie die Tests so lange, bis alle Testmodule abgeschlossen sind und die Anzahl der Testfehler zwischen den letzten beiden Wiederholungen gleich ist:
run retry --retry session_number`
Wenn die Tests bei mehreren Wiederholungen immer wieder fehlschlagen, konzentrieren Sie sich auf die Fehlerbehebung für die verbleibenden fehlgeschlagenen Tests. Informationen zur Fehlerbehebung bei Testergebnissen finden Sie unter Fehlerbehebung bei Testausfällen und Fehlerbehebung bei CTS-Tests.
CTS für Multiscreen-Geräte ausführen
Wenn auf Ihrem Gerät Android 11 oder 12 installiert ist und es mehrere Bildschirme hat, müssen Sie den cts-foldable
-Testplan separat ausführen:
run cts-foldable
An bestandene oder fehlgeschlagene Testfälle für den alternativen Bildschirmmodus wird der Wert aus display_mode
angehängt, z. B. testcase1[display_mode=0]
.
Mehrgerätetests ausführen (Android 15 oder niedriger)
Führen Sie den folgenden Befehl aus, um den cts-multidevice
-Testplan 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. Diese Option ist nützlich, um Zeit zu sparen und sich auf eine bestimmte Gruppe von Tests zu konzentrieren.
So führen Sie einen einzelnen Testplan aus:
Geben Sie den Namen des Testplans an, den Sie ausführen möchten, indem Sie den Befehl list modules
ausführen.
Testplan ausführen:
run cts --plan test_module_or_plan_name
Ausführungszeit von Tests verbessern
Wenn Sie die Ausführungszeit von Tests verbessern möchten, können Sie Tests auf mehrere Geräte aufteilen. Für das Sharding muss der Host mindestens zwei Geräte verbinden. Für eine effiziente Nutzung werden jedoch sechs oder mehr Geräte empfohlen.
Wenn Sie Tests unter Android 11 oder höher in Shards aufteilen möchten, führen Sie Folgendes aus:
run cts --shard-count number_of_shards
Außerdem können Sie vor dem Ausführen der Tests zur Validierung die Ausführungszeit mit dem CTS-Befehl run cts-dev
verbessern. Mit diesem Befehl werden die Voraussetzungen, die Erhebung von Geräteinformationen und alle Prüfungen des Systemstatus übersprungen.
Außerdem werden die Tests nur für ein einziges ABI ausgeführt.
Alle Inhalte und Codebeispiele auf dieser Seite unterliegen den Lizenzen wie im Abschnitt Inhaltslizenz beschrieben. Java und OpenJDK sind Marken oder eingetragene Marken von Oracle und/oder seinen Tochtergesellschaften.
Zuletzt aktualisiert: 2025-07-30 (UTC).
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Benötigte Informationen nicht gefunden","missingTheInformationINeed","thumb-down"],["Zu umständlich/zu viele Schritte","tooComplicatedTooManySteps","thumb-down"],["Nicht mehr aktuell","outOfDate","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Problem mit Beispielen/Code","samplesCodeIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2025-07-30 (UTC)."],[],[],null,["# Run automated tests (Android 11 or higher)\n\nThere are two options for running CTS automated tests:\n\n- *Trade Federation* is an app and test framework that lets you\n run tests from the command line. Fundamentally, the framework\n lets you annotate tests using the `@Test` annotation and the app finds and runs\n those tests.\n\n- *OmniLab Android Test Station* is an app that lets you run tests\n in a GUI.\n\nThis page explains how to run automated tests using Trade Federation. For\ninstructions on running tests using OmniLab Android Test Harness, see\n[OmniLab Android Test Station](/docs/core/tests/development/android-test-station/ats-user-guide).\n\nRun all automated CTS tests\n---------------------------\n\nTrade Federation contains the *CTS console*, a command-line interface for\nrunning tests. To run the entire automated CTS test suite:\n\n1. Ensure you have followed the instructions in [Set up CTS automated testing](/docs/compatibility/cts/setup).\n2. On your test workstation, launch the CTS console by running the `cts-tradefed` script from the folder where the CTS package has been unzipped:\n\n ./android-cts/tools/cts-tradefed\n\n The CTS console displays a cursor for you to type CTS commands\n (`cts-tradefed \u003e`).\n3. The `cts` test plan contains all of the automated CTS tests. Execute the\n following command to run the `cts` test plan:\n\n run cts\n\n The automated CTS tests execute. Note the following:\n - Android 13 and higher support multidevice testing. These tests run\n automatically only when sharding is used. For further information on sharding,\n see [Improve test execution time](#improve). If you want to run these tests\n manually, see [Run multidevice tests](#multi-device-testing).\n\n - Whenever running CTS, press **ctrl+c** to stop the existing CTS console\n and then rerun the CTS console.\n\n - You can't run multiple CTS versions on single host because each opens\n with an existing open location code (OLC) server.\n\n4. View test results. For more information, see [Interpret CTS results](/docs/compatibility/cts/interpret).\n\n5. If this is your first test run, there might be tests that fail due to issues beyond your control. For example, a network connection might be slow or a GPS signal might be weak. Rerun (retry) the tests until all test modules are completed and the test failure numbers are the same between the last two retry sessions:\n\n run retry --retry \u003cvar translate=\"no\"\u003esession_number\u003c/var\u003e`\n\n | **Note:** For implementation details for CTS retry, see [Use suite retry](/docs/core/tests/tradefed/testing/through-suite/suite-retry).\n | **Note:** For instructions on how to run a retry session on Android 10 or lower, see [Run CTS automated tests (AOSP 10 or lower)](/docs/compatibility/cts/run-older).\n6. After tests failures are consistent across retries, focus on debugging\n the remaining failed tests. For information on troubleshooting test\n results, see\n [Triage test failures](/docs/compatibility/cts/interpret#triaging-test-failures)\n and\n [Troubleshoot CTS tests](/docs/compatibility/cts/troubleshooting).\n\n| **Note:** For a list of all CTS console commands, see [CTS v2 command console](/compatibility/cts/command-console-v2).\n\nRun CTS for multiscreen devices\n-------------------------------\n\nIf your device is running Android 11 or 12, and your device has multiple\nscreens, you must run the `cts-foldable` test plan separately: \n\n run cts-foldable\n\nPassed or failed test cases for alternate screen mode are appended with the\nvalue from `display_mode`, for example, `testcase1[display_mode=0]`.\n| **Note:** For instructions on how to run the `cts-foldable` test plan for Android 10 or lower, see [Run CTS automated tests (Android 10 or lower)](/docs/compatibility/cts/run-older).\n\nRun multidevice tests (Android 15 or lower)\n-------------------------------------------\n\nExecute the following command to run the `cts-multidevice` test plan: \n\n run cts-multidevice\n\nRun individual test plans\n-------------------------\n\nInstead of running all test plans at once, you can run individual test plans.\nThis option is useful to save time and to focus on a specific set of tests.\nTo run an individual test plan:\n\n1. Identify the name of the test plan you want to run by executing the `list modules` command.\n\n | **Note:** For instructions on how to identify the module on Android 10 or lower, see [Run CTS automated tests (Android 10 or lower)](/docs/compatibility/cts/run-older).\n2. Run the test plan:\n\n run cts --plan \u003cvar translate=\"no\"\u003etest_module_or_plan_name\u003c/var\u003e\n\nImprove test execution time\n---------------------------\n\nIf you want to improve test execution time, you can shard tests across multiple\ndevices. Sharding requires the host to connect at least two devices, but six or\nmore devices are recommended for efficiency.\n\nTo shard tests on Android 11 or higher, run: \n\n run cts --shard-count \u003cvar translate=\"no\"\u003enumber_of_shards\u003c/var\u003e\n\nAdditionally, before running your tests for validation you can improve test\nexecution time by using the CTS `run cts-dev` command. This command skips\npreconditions, device-information collection, and all system status checkers.\nIt also runs the tests on only a single ABI."]]