Configurer les tests automatisés CTS

Avant de pouvoir exécuter des tests CTS automatisés, préparez votre environnement physique, configurez votre station de travail et configurez l'appareil que vous testez.

Configurer l'environnement physique

Certains tests CTS nécessitent l'utilisation d'appareils externes à configurer à proximité de l'appareil testé. Pour configurer votre environnement physique:

  1. (Facultatif) Si votre DUT est compatible avec le Bluetooth LE, placez au moins trois balises Bluetooth LE à moins de cinq mètres du DUT pour les tests de balayage Bluetooth LE. De plus :

    • Les balises n'ont pas besoin d'être configurées ni d'émettre quoi que ce soit de spécifique.
    • Les balises peuvent être de n'importe quel type, y compris iBeacon, Eddystone ou même des appareils simulant des balises BLE.
  2. Placez le téléphone devant une scène, comme un mur ou un plafond, à une distance équivalente à la distance de mise au point minimale de l'appareil. De plus :

    • La scène doit être suffisamment éclairée pour permettre aux capteurs testés d'atteindre et de maintenir le nombre maximal de frames par seconde (FPS) configuré comme spécifié dans CONTROL_AE_TARGET_FPS_RANGE.
    • Cette configuration s'applique à tous les capteurs de caméra signalés par getCameraIdList, car le test itère sur les appareils listés et mesure les performances individuellement.
    • Si l'appareil testé accepte les caméras externes, telles que les webcams USB, branchez une caméra externe lorsque vous exécutez CTS. Sinon, les tests CTS échouent.
  3. (Facultatif) Si votre DUT est compatible avec un système de positionnement global (GPS) ou un autre système de navigation par satellite global (GNSS), fournissez un signal GNSS au DUT à un niveau de signal approprié pour la réception et le calcul de la position. De plus :

    • Le GPS doit être conforme à la norme ICD-GPS-200C.
    • Le signal GNSS peut être de n'importe quel type, y compris un simulateur de satellite ou un répéteur de signaux extérieurs.
    • Vous pouvez placer l'appareil testé près d'une fenêtre afin qu'il puisse recevoir directement suffisamment de signaux GNSS d'un satellite.
  4. Assurez-vous que votre réseau Wi-Fi est compatible avec les protocoles IPv4 et IPv6, qu'il dispose d'une connexion Internet avec DNS pour IPv4 et IPv6, qu'il est compatible avec la multidiffusion IP et qu'il peut traiter le DUT comme un client isolé.

    Si vous n'avez pas accès à un réseau IPv6 natif, à un réseau de l'opérateur IPv6 ou à un VPN pour réussir les tests IPv6, utilisez un point d'accès Wi-Fi et un tunnel IPv6.

  5. Assurez-vous que les options UP, BROADCAST et MULTICAST sont définies sur l'interface Wi-Fi du DUT.

  6. Assurez-vous que des adresses IPv4 et IPv6 sont attribuées à l'interface Wi-Fi. Pour vérifier les propriétés de l'interface Wi-Fi, exécutez adb shell ifconfig.

  7. (Facultatif) Si votre DUT est compatible avec la concurrenciabilité STA ou STA Wi-Fi, configurez au moins deux réseaux Wi-Fi. Ces réseaux Wi-Fi doivent fonctionner sur des bandes différentes avec des SSID différents ou sur le même SSID avec des BSSID différents.

  8. (Facultatif) Si votre DUT est compatible avec le délai aller-retour (DAR) Wi-Fi, configurez un appareil compatible avec le DAR Wi-Fi:

    1. Placez l'appareil RTT Wi-Fi à moins de 12 mètres du DUT.
    2. Allumez l'appareil RTT Wi-Fi.

    Voici deux appareils recommandés compatibles avec le RTT Wi-Fi : - Google Wifi - Point d'accès fitlet2 de Compulab (paramètre de bande passante défini sur 40 MHz à 5 GHz).

Configurer votre ordinateur de bureau

Avant d'exécuter les tests automatisés CTS, assurez-vous que votre ordinateur de bureau répond aux exigences matérielles et logicielles du système d'exploitation, et que les logiciels appropriés sont installés, comme décrit dans les sections suivantes.

Disposer de la configuration matérielle requise

Votre ordinateur de bureau CTS doit répondre aux exigences matérielles suivantes ou les dépasser:

  • Un système x86 64 bits

  • Au moins 256 Go d'espace disque disponible pour accueillir le nombre accru de cas de test CTS et une augmentation de la réservation d'espace de tas Java dans Tradefed

  • 32 Go de RAM minimum

Respecter les exigences du système d'exploitation

Votre machine de développement doit exécuter une distribution Linux 64 bits avec GNU C Library (glibc) 2.17 ou version ultérieure.

Installer le logiciel pour ordinateur

Pour installer le logiciel de bureau approprié pour CTS:

  1. Installez le paquet FFmpeg version 5.1.3 ou ultérieure.

  2. Installez les dernières versions d'Android Debug Bridge (adb) et d'Android Asset Packaging Tool (AAPT2), puis ajoutez l'emplacement de ces outils au chemin d'accès système de votre machine:

    1. Suivez les instructions au début de la documentation du SDK Manager pour installer l'outil de ligne de commande sdkmanager. Le lien de téléchargement des outils de ligne de commande se trouve dans la section Outils de ligne de commande uniquement au bas de la page de téléchargement d'Android Studio.
    2. Mettez à jour votre chemin d'accès système pour inclure l'emplacement du sdkmanager nouvellement installé.
    3. À l'aide de sdkmanager, installez les derniers packages platform-tools et build-tools. Ces packages contiennent adb et AAPT2. Pour en savoir plus sur l'installation de packages, consultez Installer des packages.
    4. Mettez à jour votre chemin d'accès pour inclure l'emplacement des outils adb et AAPT2 nouvellement installés.
    5. Vérifiez que adb et AAPT2 se trouvent dans votre chemin d'accès.
  3. Installez la version appropriée du kit de développement Java (JDK):

  4. (Facultatif) Pour Android 13 ou version ultérieure, installez virtualenv. L'outil virtualenv est obligatoire pour les tests multi-appareils.

  5. Pour vous assurer que Python est installé, saisissez python3. La version et la date de Python doivent s'afficher, ce qui indique que Python est correctement installé.

  6. Téléchargez et ouvrez les packages CTS à partir des téléchargements de la suite de tests de compatibilité correspondant à la version Android de vos appareils et à toutes les interfaces binaires d'application (ABI) compatibles avec vos appareils.

  7. Téléchargez et ouvrez la dernière version des fichiers multimédias CTS. Les fichiers multimédias incluent des extraits vidéo de Big Buck Bunny, qui sont protégés par des droits d'auteur par la Blender Foundation sous la licence Creative Commons Attribution 3.0.

  8. (Facultatif) Lorsque vous exécutez CTS pour la première fois, il télécharge dynamiquement certains fichiers CTS associés à la ligne principale. En fonction de la vitesse de votre réseau, ce téléchargement ajoute 10 minutes ou plus à la durée d'exécution du CTS.

    Pour éviter ce temps d'exécution supplémentaire de CTS, vous pouvez télécharger les fichiers CTS associés à la ligne principale avant d'exécuter CTS. Pour en savoir plus sur le téléchargement des fichiers CTS associés à la ligne principale, consultez la page Télécharger les fichiers CTS associés à la ligne principale.

Préparer le DUT

Après avoir configuré votre ordinateur de bureau, vous devez configurer le DUT.

Configurer l'appareil de test

Pour configurer l'appareil testé:

  1. Assurez-vous que le DUT exécute une image système basée sur la version utilisateur compatible (Android 4.0 ou version ultérieure) de la section Codenames, Tags, and Build Numbers (Noms de code, tags et numéros de compilation) et qu'il utilise la variante de compilation user. Pour en savoir plus sur les variantes de compilation, consultez la section Choisir une cible.

  2. Si l'appareil de test fonctionne sous Android 13 ou version ultérieure, assurez-vous que la version a défini ro.product.first_api_level sur le niveau d'API avec lequel l'appareil a été commercialisé. Pour définir cette valeur, apportez la modification suivante au fichier device.mk:

    PRODUCT_SHIPPING_API_LEVEL := 21
    

    Certaines exigences CTS dépendent de la version avec laquelle un appareil a été initialement expédié. Par exemple, les appareils livrés à l'origine avec des versions antérieures peuvent être exclus des exigences système qui s'appliquent aux appareils livrés avec des versions ultérieures. Pour connaître les valeurs de niveau d'API valides, consultez la section Noms de code, balises et numéros de compilation. Pour en savoir plus sur ro.product.first_api_level, consultez la section Niveau d'API du fournisseur.

    Pour Android 10 ou version antérieure, consultez la section Configurer CTS (AOSP 10 ou version antérieure).

  3. Si votre appareil est compatible avec la gestion des paquets APEX:

    1. Téléchargez le package de shim APEX pour votre version Android et votre architecture matérielle spécifiques. Les deux colonnes de gauche du tableau des packages de correction fournissent des liens vers le package à télécharger.
    2. Copiez le package téléchargé dans /system/apex.
    3. Renommez le fichier en com.android.apex.cts.shim.apex.
  4. Si votre appareil n'est pas compatible avec la gestion des paquets APEX:

    1. Téléchargez les packages de shim APEX pour votre version Android et votre architecture matérielle spécifiques. Les deux colonnes de droite du tableau des packages de shim fournissent des liens vers les packages à télécharger.
    2. Copiez CtsShim.apk dans /system/app/ :
    3. Renommez CtsShim.apk en CtsShimPrebuilt.apk.
    4. Copiez CtsShimPriv.apk dans /system/priv-app/ :
    5. Renommez CtsShimPriv.apk en CtsShimPrivPrebuilt.apk.
  5. Si votre appareil signale plusieurs éléments sécurisés:

    1. Téléchargez google-cardlet.cap.
    2. Copiez le fichier téléchargé dans /data/uicc/cardlets/.
  6. Si votre appareil signale plusieurs éléments sécurisés, installez l'exemple d'applet dans l'élément sécurisé intégré (eSE) du DUT ou dans la carte SIM utilisée par le DUT. Pour en savoir plus, consultez le test CTS pour le composant sécurisé.

  7. Si votre appareil ne dispose pas d'écran intégré, connectez-en un.

  8. Si l'appareil dispose d'un port pour carte mémoire, insérez-y une carte SD vide. Utilisez une carte SD compatible avec un bus UHS (ultra-haute vitesse) avec une capacité SDHC ou SDXC, ou une carte de classe de vitesse 10 ou supérieure pour vous assurer qu'elle peut passer le CTS.

  9. Si l'appareil comporte des emplacements pour carte SIM, insérez une carte SIM activée dans chacun d'eux. Si l'appareil est compatible avec les SMS, chaque carte SIM doit disposer de son propre champ de numéro. Pour les appareils équipés d'Android 12 ou version ultérieure, toutes les cartes SIM doivent être compatibles avec le stockage des numéros abrégés. Les cartes GSM et USIM avec le fichier dédié aux télécommunications (DFTelecom) répondent à cette exigence.

  10. Assurez-vous que votre appareil dispose d'une carte SIM avec des droits d'accès au transporteur CTS conformes aux exigences spécifiées dans la section Préparer la carte UICC.

Configurer l'appareil à tester

Pour configurer votre DUT pour l'utiliser avec CTS, procédez comme suit :

Sur le DUT:

  1. Rétablissez la configuration d'usine de l'appareil.

  2. Définissez la langue de l'appareil sur Anglais (États-Unis).

  3. Si l'appareil permet de personnaliser les polices par défaut, assurez-vous que la famille de polices sans serif par défaut est définie sur Roboto.

  4. Si l'appareil dispose d'une fonctionnalité GPS, Wi-Fi ou réseau mobile, activez le paramètre de localisation.

  5. Connectez-vous à un réseau Wi-Fi compatible avec l'IPv6, qui peut traiter le DUT comme un client isolé et qui dispose d'une connexion Internet. Pour en savoir plus sur les clients isolés, consultez la section Configurer l'environnement physique.

  6. Assurez-vous qu'aucun schéma de verrouillage ni mot de passe n'est défini.

  7. Activez le débogage USB:

    1. Accédez à Paramètres > À propos du téléphone, puis appuyez sept fois sur Numéro de version. Les options pour les développeurs s'affichent dans la catégorie de paramètres Système.

    2. Appuyez sur Débogage USB.

    Pour activer le débogage USB sur Android 10 ou version antérieure, consultez la section Configurer CTS (AOSP 10 ou version antérieure).

  8. Définissez l'heure au format 12 heures.

  9. Activez Options pour les développeurs > Rester éveillé.

  10. Désactiver la validation des applications via USB:

    1. Accédez à Options pour les développeurs.

    2. Appuyez sur Vérifier les applis via USB.

  11. Sous Android 13 ou version ultérieure, activez le modem fictif:

    1. Accédez à Options pour les développeurs.

    2. Appuyez sur Autoriser le modem fictif.

    Ce paramètre est requis pour des tests de téléphonie spécifiques.

Sur l'ordinateur de bureau:

  1. Lancez le navigateur et ignorez tout écran de démarrage ou de configuration.

  2. Connectez le DUT à l'ordinateur de bureau à l'aide d'un câble USB.

  3. Si le système vous demande d'accepter une clé RSA permettant le débogage via cet ordinateur, cliquez sur Allow USB debugging (Autoriser le débogage USB).

  4. Définissez Roboto2 comme police sans serif à l'aide d'un paramètre accessible à l'utilisateur (non masqué).

  5. Copiez les fichiers multimédias CTS sur le DUT:

    1. Accédez (cd) au chemin d'accès où les fichiers multimédias sont téléchargés et décompressés.
    2. Modifiez les autorisations du fichier:

      chmod u+x copy_media.sh
      
    3. Copiez les fichiers:

      • Pour copier des extraits jusqu'à une résolution de 720x480, exécutez la commande suivante:

        ./copy_media.sh 720x480
      • Si vous n'êtes pas sûr de la résolution maximale, copiez tous les fichiers:

        ./copy_media.sh all
      • S'il existe plusieurs DUT, ajoutez l'option de numéro de série (-s) d'un appareil spécifique à la fin. Par exemple, pour copier jusqu'à 720x480 sur l'appareil dont le numéro de série est 1234567, exécutez la commande suivante:

        ./copy_media.sh 720x480 -s 1234567

Télécharger les fichiers CTS associés à la ligne principale

Pour télécharger les fichiers CTS associés à la branche principale:

  1. Obtenez le niveau d'API Android sur l'appareil en exécutant:

    adb shell getprop ro.build.version.sdk
    
  2. Suivez les instructions du script download_mcts.sh pour télécharger les fichiers CTS principaux.

    Le téléchargement prend au moins 10 minutes, en fonction du débit de votre réseau.

Packages shim

Le tableau suivant répertorie les packages disponibles pour chaque version et architecture d'appareil:

Version de l'appareil Packages (si APEX est compatible) Packages (si APEX n'est pas compatible)
ARM x86 ARM x86
Android 15 15-arm-release android15-x86-release android15-arm-CtsShim.apk

android15-arm-CtsShimPriv.apk

android15-x86-CtsShim.apk

android15-x86-CtsShimPriv.apk

Android 14 android14-arm-release android14-x86-release android14-arm-CtsShim.apk

android14-arm-CtsShimPriv.apk

android14-x86-CtsShim.apk

android14-x86-CtsShimPriv.apk

Android 13 android13-arm-release android13-x86-release android13-arm-CtsShim.apk

android13-arm-CtsShimPriv.apk

android13-x86-CtsShim.apk

android13-x86-CtsShimPriv.apk

Android 12 android12-arm-release android12-x86-release android12-arm-CtsShim.apk

android12-arm-CtsShimPriv.apk

android12-x86-CtsShim.apk

android12-x86-CtsShimPriv.apk

Android 11 android11-arm-release android11-x86-release android11-arm-CtsShim.apk

android11-arm-CtsShimPriv.apk

android11-x86-CtsShim.apk

android11-x86-CtsShimPriv.apk

Android 10 android10-release android10-arm-CtsShim.apk

android10-arm-CtsShimPriv.apk

android10-x86-CtsShim.apk

android10-x86-CtsShimPriv.apk

Android 9, O et O-MR1 N/A N/A arm-CtsShim.apk

arm-CtsShimPriv.apk

x86-CtsShim.apk

x86-CtsShimPriv.apk

Et maintenant ?

Après avoir lu ce document, passez à la section Exécuter des tests CTS automatisés.