À partir du 27 mars 2025, nous vous recommandons d'utiliser android-latest-release
au lieu de aosp-main
pour créer et contribuer à AOSP. Pour en savoir plus, consultez la section Modifications apportées à AOSP.
Exécuter des tests automatisés (Android 11 ou version ultérieure)
Restez organisé à l'aide des collections
Enregistrez et classez les contenus selon vos préférences.
Vous avez le choix entre deux options pour exécuter des tests automatisés CTS:
Trade Federation est un framework d'application et de test qui vous permet d'exécuter des tests à partir de la ligne de commande. Fondamentalement, le framework vous permet d'annoter des tests à l'aide de l'annotation @Test
, et l'application trouve et exécute ces tests.
OmniLab Android Test Station est une application qui vous permet d'exécuter des tests dans une IUG.
Cette page explique comment exécuter des tests automatisés à l'aide de Trade Federation. Pour obtenir des instructions sur l'exécution de tests à l'aide du banc d'essai Android OmniLab, consultez la section Station de test Android OmniLab.
Exécuter tous les tests CTS automatisés
La Trade Federation contient la console CTS, une interface de ligne de commande permettant d'exécuter des tests. Pour exécuter l'ensemble de tests CTS automatisé complet:
- Assurez-vous d'avoir suivi les instructions de la section Configurer les tests automatisés CTS.
Sur votre station de travail de test, lancez la console CTS en exécutant le script cts-tradefed
à partir du dossier dans lequel le package CTS a été décompressé:
./android-cts/tools/cts-tradefed
La console CTS affiche un curseur pour vous permettre de saisir des commandes CTS (cts-tradefed >
).
Le plan de test cts
contient tous les tests CTS automatisés. Exécutez la commande suivante pour exécuter le plan de test cts
:
run cts
Les tests CTS automatisés s'exécutent. Remarques :
Android 13 et versions ultérieures sont compatibles avec les tests multiappareils. Ces tests ne s'exécutent automatiquement que lorsque le sharding est utilisé. Pour en savoir plus sur le sharding, consultez Améliorer le temps d'exécution des tests. Si vous souhaitez exécuter ces tests manuellement, consultez Exécuter des tests multiappareils.
Chaque fois que vous exécutez CTS, appuyez sur Ctrl+C pour arrêter la console CTS existante, puis exécutez à nouveau la console CTS.
Vous ne pouvez pas exécuter plusieurs versions de CTS sur un même hôte, car chacune s'ouvre avec un serveur de code d'emplacement ouvert (OLC) existant.
Afficher les résultats du test. Pour en savoir plus, consultez Interpréter les résultats du CTS.
S'il s'agit de votre premier test, il est possible que certains échouent en raison de problèmes hors de votre contrôle. Par exemple, une connexion réseau peut être lente ou un signal GPS peut être faible. Relancez les tests jusqu'à ce que tous les modules de test soient terminés et que le nombre d'échecs des tests soit le même entre les deux dernières sessions de nouvelle tentative:
run retry --retry session_number`
Une fois que les échecs des tests sont cohérents entre les tentatives, concentrez-vous sur le débogage des tests restants. Pour savoir comment résoudre les problèmes liés aux résultats des tests, consultez Trier les échecs des tests et Résoudre les problèmes liés aux tests CTS.
Exécuter le CTS pour les appareils multiécrans
Si votre appareil fonctionne sous Android 11 ou 12 et qu'il comporte plusieurs écrans, vous devez exécuter le plan de test cts-foldable
séparément:
run cts-foldable
Les scénarios de test réussis ou échoués pour le mode d'écran alternatif sont ajoutés à la valeur de display_mode
, par exemple testcase1[display_mode=0]
.
Exécuter des tests multiappareils (Android 15 ou version antérieure)
Exécutez la commande suivante pour exécuter le plan de test cts-multidevice
:
run cts-multidevice
Exécuter des plans de test individuels
Au lieu d'exécuter tous les plans de test en même temps, vous pouvez exécuter des plans de test individuels. Cette option est utile pour gagner du temps et se concentrer sur un ensemble de tests spécifique.
Pour exécuter un plan de test individuel:
Identifiez le nom du plan de test que vous souhaitez exécuter en exécutant la commande list modules
.
Exécutez le plan de test:
run cts --plan test_module_or_plan_name
Améliorer le temps d'exécution des tests
Si vous souhaitez améliorer le temps d'exécution des tests, vous pouvez les répartir sur plusieurs appareils. Le fractionnement nécessite que l'hôte connecte au moins deux appareils, mais six appareils ou plus sont recommandés pour plus d'efficacité.
Pour fractionner des tests sur Android 11 ou version ultérieure, exécutez:
run cts --shard-count number_of_shards
De plus, avant d'exécuter vos tests de validation, vous pouvez améliorer le temps d'exécution des tests à l'aide de la commande run cts-dev
du CTS. Cette commande ignore les conditions préalables, la collecte d'informations sur l'appareil et tous les vérificateurs d'état du système.
Il n'exécute également les tests que sur une seule ABI.
Le contenu et les exemples de code de cette page sont soumis aux licences décrites dans la Licence de contenu. Java et OpenJDK sont des marques ou des marques déposées d'Oracle et/ou de ses sociétés affiliées.
Dernière mise à jour le 2025/07/30 (UTC).
[[["Facile à comprendre","easyToUnderstand","thumb-up"],["J'ai pu résoudre mon problème","solvedMyProblem","thumb-up"],["Autre","otherUp","thumb-up"]],[["Il n'y a pas l'information dont j'ai besoin","missingTheInformationINeed","thumb-down"],["Trop compliqué/Trop d'étapes","tooComplicatedTooManySteps","thumb-down"],["Obsolète","outOfDate","thumb-down"],["Problème de traduction","translationIssue","thumb-down"],["Mauvais exemple/Erreur de code","samplesCodeIssue","thumb-down"],["Autre","otherDown","thumb-down"]],["Dernière mise à jour le 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."]]