Exécuter des tests CTS

Trade Federation est un framework de test continu permettant d'exécuter des tests sur des appareils Android. Pour exécuter la suite de tests de compatibilité (CTS), commencez par lire le Présentation de la fédération d'échange pour une du framework de test Tradefed.

Pour exécuter un plan de test :

  1. Configurez les appareils testés conformément à la configuration des appareils Android.
  2. Assurez-vous d'avoir installé les versions récentes d'Android Debug Bridge (adb) et d'Android Asset Packaging Tool (AAPT), et d'avoir ajouté l'emplacement de ces outils au chemin d'accès système de votre ordinateur. Pour plus d'informations sur l'installation de ces outils, consultez Configurer CTS: ADB et AAPT
  3. Téléchargez les builds CTS publiés sur votre sur la machine hôte Linux et décompressez le build dans l'emplacement hôte.
  4. Connectez au moins un appareil. Pour préparer l'appareil testé: <ph type="x-smartling-placeholder">
      </ph>
    • Appuyez sur le bouton Accueil pour afficher l'écran d'accueil de l'appareil.
    • N'utilisez pas l'appareil testé pour d'autres tâches.
    • Maintenez l'appareil sous test dans une position fixe pour éviter de déclencher l'activité des capteurs.
    • Dirigez l'appareil photo de l'appareil vers un objet sur lequel la mise au point peut être effectuée.
    • N'appuyez sur aucune touche de l'appareil lorsque la CTS est en cours d'exécution. Appuyer sur les touches ou toucher l'écran d'un DUT interfère avec les tests en cours et peut entraîner des échecs de test.
  5. Lancez le script cts-tradefed de la console CTS à partir du dossier dans lequel le package CTS a été décompressé. Dans l'interface système de ligne de commande de l'hôte, exécutez la commande suivante:

    ./android-cts/tools/cts-tradefed
  6. Exécutez le plan de test par défaut (qui contient tous les packages de test):

    cts-tradefed > run cts
    • Si vous souhaitez améliorer le temps d'exécution des tests, vous pouvez segmenter les tests sur plusieurs appareils. Le fractionnement nécessite que l'hôte connecte au moins deux appareils, mais il est recommandé d'en utiliser six ou plus pour plus d'efficacité. Lorsque vous partitionnez plusieurs appareils :

      • Pour Android 9 et versions ultérieures, utilisez l'option de commande

        --shard-count number_of_shards
      • Pour Android 8.1 ou version antérieure, utilisez l'option de commande

        --shards number_of_shards
    • Si vous ne souhaitez pas exécuter toute la suite de tests, vous pouvez exécuter la Plan CTS de votre choix la ligne de commande:

      run cts --plan test_plan_name

      Pour trouver le nom du plan de test :

      • Pour Android 7.0 ou version ultérieure, saisissez

        list modules
      • Pour Android 6.0 ou version antérieure, vous pouvez afficher la liste des plans de test dans le dans un dépôt de fichiers, saisissez

        list plans
      • Pour Android 6.0 ou version antérieure, pour afficher la liste des packages de test dans le dépôt, saisissez

        list packages
    • Pour voir d'autres options de commande selon les versions de CTS, consultez Documentation de référence sur les commandes de la console ou sous "Tout aider". dans la console Tradefed.

  7. Exécuter plusieurs sessions Réessayer jusqu'à ce que tous les modules de test soient terminés et que le nombre d'échecs des tests est identique dans les deux dernières sessions de nouvelle tentative.

    • Pour Android 9 ou version ultérieure, utilisez

      run retry --retry session_number --shard-count number_of_shards
    • Pour Android 7.0 à 8.1, utilisez

      run cts --retry session_number --shards number_of_shards
    • Pour connaître les options de la commande "Retry" supplémentaires selon la version de CTS, consultez la section Console de commande CTS v2

    • Pour en savoir plus sur l'implémentation de la nouvelle tentative CTS, consultez la section Réitération de la suite Trade Federation.

  8. Exécutez une session de nouvelle tentative uniquement sur les tests paramétrés ayant échoué. Réussite les tests paramétrés ne sont pas relancés.

    • Pour Android 11 et versions ultérieures, l'option de commande de nouvelle tentative suivante est activée par défaut dans la commande run cts :

      run retry --retry  --new-parameterized-handling
  9. Affichez la progression des tests et les résultats indiqués dans la console.

Exécuter CTS à l'aide de la station de test Android

Android Test Station est un outil d'automatisation des tests que les développeurs et les ingénieurs de test Android peuvent utiliser pour exécuter des suites de tests standards à l'aide d'une interface utilisateur. Il est compatible avec la suite de tests de compatibilité Android (CTS).

L'outil est accessible au public via Guide de l'utilisateur ATS et son code est Open Source dans AOSP (multitest_transport, tradefed_cluster).

Exécuter CTS pour les modes alternatifs

La version CTS 10 R4 ajoute un plan de test pour les appareils avec des modes alternatifs, ou pour appareils avec plusieurs écrans. Exécutez le plan de test des modes alternatifs à l'aide de run cts-foldable.

Les scénarios de test réussis ou échoués pour l'autre mode d'écran sont ajoutés avec le valeur de display_mode (par exemple, testcase1[display_mode=0]).

Dans CTS 13, l'API DeviceStateManager permet d'exécuter des modules de test avec l'option de configuration suivante sur différents états d'un appareil pliable. L'exécution du test est automatique dans CTS en fonction des états de pliage de l'écran défini dans l'appareil sans qu'il soit nécessaire d'exécuter le plan de test cts-foldable.

<option name="config-descriptor:metadata" key="parameter" value="all_foldable_states" />

Tests multi-appareils dans CTS

Android 13 ou version ultérieure est compatible avec les tests multi-appareils. Les tests qui nécessitent plusieurs appareils s'exécutent automatiquement lors de l'exécution du CTS. CTS 13 inclut des tests multi-appareils qui se déclenchent automatiquement lors de la segmentation est utilisé. Bien que les tests ne nécessitent pas de modifications supplémentaires de la configuration physique, virtualenv doit être installé pour que les tests s'exécutent correctement. Pour en savoir plus, consultez la section Suites multi-appareils.

Effectuer des tests multi-appareils

Pour effectuer des tests multi-appareils de manière indépendante, utilisez le code suivant:

  cts-tradefed > run cts-multidevice
  

Toutes les options standards sont acceptées. Pour cibler des appareils spécifiques, ajoutez --serial <serial1> --serial <serial2>, et ainsi de suite pour le nombre d'appareils ciblées.

Pour déclencher automatiquement des tests multi-appareils, utilisez la segmentation, comme dans --shard-count 2.