Exécuter des tests automatisés (Android 11 ou version ultérieure)

Vous disposez de deux options pour exécuter des tests CTS automatisés :

  • 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. L'application trouve et exécute ensuite ces tests.

  • OmniLab Android Test Station est une application qui vous permet d'exécuter des tests dans une interface graphique.

Cette page explique comment exécuter des tests automatisés à l'aide de Trade Federation. Pour savoir comment exécuter des tests à l'aide d'OmniLab Android Test Harness, consultez OmniLab Android Test Station.

Exécuter tous les tests CTS automatisés

Trade Federation contient la console CTS, une interface de ligne de commande permettant d' exécuter des tests. Pour exécuter l'ensemble de la suite de tests CTS automatisés :

  1. Assurez-vous d'avoir suivi les instructions de la section Configurer les tests CTS automatisés.
  2. 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 que vous puissiez saisir des commandes CTS (cts-tradefed >).

  3. 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. Veuillez noter les points suivants :

    • Android 13 et versions ultérieures sont compatibles avec les tests sur plusieurs appareils. Ces tests ne s'exécutent automatiquement que lorsque le partitionnement est utilisé. Pour en savoir plus sur le partitionnement, consultez Améliorer le temps d'exécution des tests. Si vous souhaitez exécuter ces tests manuellement, consultez Exécuter des tests sur plusieurs appareils.

    • Lorsque vous exécutez CTS, appuyez sur Ctrl+C pour arrêter la console CTS existante, puis réexécutez-la.

    • Vous ne pouvez pas exécuter plusieurs versions de CTS sur un seul hôte, car chacune s'ouvre avec un serveur de code de localisation ouvert (OLC) existant.

  4. Affichez les résultats des tests. Pour en savoir plus, consultez Interpréter les résultats CTS.

  5. Si vous exécutez les tests pour la première fois, certains peuvent échouer en raison de problèmes indépendants de votre volonté. Par exemple, la connexion réseau peut être lente ou le signal GPS faible. Réexécutez les tests jusqu'à ce que tous les modules de test soient terminés et que le nombre d'échecs du test soit le même entre les deux dernières sessions de nouvelle tentative :

    run retry --retry session_number`
    
  6. Une fois que les échecs de test sont cohérents entre les nouvelles tentatives, concentrez-vous sur le débogage des tests restants qui ont échoué. Pour en savoir plus sur le dépannage des résultats de test, consultez Triage des échecs de test et Résoudre les problèmes liés aux tests CTS.

Exécuter CTS pour les appareils multi-écrans

Si votre appareil est équipé d'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 cas de test réussis ou échoués pour le mode d'écran alternatif sont ajoutés avec la valeur de display_mode, par exemple, testcase1[display_mode=0].

Exécuter des tests sur plusieurs appareils (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 spécifique de tests. Pour exécuter un plan de test individuel :

  1. Identifiez le nom du plan de test que vous souhaitez exécuter en exécutant la commande list modules.

  2. 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 partitionner les tests sur plusieurs appareils. Le partitionnement nécessite que l'hôte connecte au moins deux appareils, mais six appareils ou plus sont recommandés pour plus d'efficacité.

Pour partitionner des tests sur Android 11 ou version ultérieure, exécutez la commande suivante :

run cts --shard-count number_of_shards

De plus, avant d'exécuter vos tests pour la validation, vous pouvez améliorer le temps d'exécution des tests à l'aide de la commande CTS run cts-dev. Cette commande ignore les préconditions, la collecte d'informations sur l'appareil et tous les vérificateurs d'état du système. Elle n'exécute également les tests que sur une seule ABI.