Station de test Android

Android Test Station est un outil de test que les développeurs et ingénieurs de test Android peuvent utiliser pour utiliser une interface utilisateur permettant d'exécuter des suites de tests Android standard, telles que la suite de tests de compatibilité Android (CTS) . Cet outil agit comme une interface Web pour Trade Federation (TF) , vous permettant d'exécuter facilement CTS sur un ensemble d'appareils de test avec une configuration minimale, ainsi que d'établir un calendrier pour exécuter des tests en continu.

Configurer la station de test Android

Cette section explique comment installer et configurer Android Test Station.

Android Test Station utilise le code source de ces emplacements :

Installer la station de test Android

Suivez toutes les exigences matérielles et logicielles pour les suites de tests que vous exécutez.

Les exigences pour CTS se trouvent sur source.android.com .

Il n’y a aucune configuration matérielle supplémentaire requise pour ATS, mais nous vous recommandons d’utiliser la configuration requise de l’hôte CTS comme point de départ.

Il existe deux manières d'installer Android Test Station :

Installer avec le programme d'installation

Sur Ubuntu 20.04+, le programme d'installation installe et configure tous les programmes et ressources nécessaires pour exécuter Android Test Station.

Pour utiliser le programme d'installation :

  1. Exécutez le programme d'installation :

    curl https://storage.googleapis.com/android-mtt.appspot.com/prod/install.sh | bash
    
  2. Exécutez mtt version pour vérifier la version installée d’Android Test Station CLI.

Installer manuellement

Installer Docker
  1. Suivez les instructions pour installer Docker Community Edition (CE) sur votre machine Linux.

  2. Suivez les étapes post-installation pour gérer Docker en tant qu'utilisateur non root .

  3. Vous devrez peut-être redémarrer la fenêtre de votre terminal ou vous déconnecter et vous reconnecter pour que les modifications d'autorisation prennent effet.

Installer Python 3

La CLI Android Test Station est vérifiée par rapport aux versions 3.7 à 3.10 de Python.

Pour Ubuntu 16.04 ou version antérieure, ajoutez d'abord le référentiel pour Python 3 en effectuant l'une des opérations suivantes :

  • Exécutez cette commande :

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • Construisez et installez le référentiel à partir de la source .

Pour installer Python 3, exécutez ces commandes :

sudo apt-get update
sudo apt install python3 python3-distutils

Pour installer une version spécifique de Python 3 (par exemple, 3.10), exécutez plutôt ces commandes :

sudo apt-get update
sudo apt install python3.10 python3.10-distutils

Obtenez la CLI de la station de test Android

Téléchargez le package d'interface de ligne de commande (CLI) ici.

Démarrer la station de test Android

Démarrez Android Test Station avec la commande suivante :

mtt start

Au premier démarrage de l’interface utilisateur, l’affichage peut prendre quelques minutes. La CLI affiche une URL Web pour accéder à l'interface utilisateur dans un navigateur. Par défaut, l'URL Web est localhost:8000 . Si nécessaire, vous pouvez modifier le port par défaut au démarrage avec l'indicateur --port .

Si une version plus récente est disponible, vous pouvez mettre à jour vers la version actuelle. Vous pouvez consulter les notes de version pour les dernières versions.

Pour mettre à jour vers la version actuelle, exécutez :

mtt start --force_update

Pour arrêter l'application, exécutez :

mtt stop

Pour afficher une liste d'autres commandes, utilisez :

mtt --help

Sauvegarder et restaurer la base de données

Pour sauvegarder la base de données ATS, arrêtez l'application et exécutez la commande suivante, qui sauvegarde la base de données actuelle dans un fichier TAR nommé mtt-backup.tar dans votre répertoire personnel :

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar cvf /out/mtt-backup.tar ."

Pour restaurer, exécutez la commande suivante avant de démarrer l'application :

docker run --rm --mount source=mtt-data,target=/data -v ~:/out ubuntu bash -c "cd /data && tar xvf /out/mtt-backup.tar"

Assistant de configuration

Après avoir installé et exécuté Android Test Station pour la première fois, l'assistant d'installation vous guide à travers quelques étapes pour vous aider à personnaliser l'outil en fonction de votre environnement. Toutes les modifications que vous apportez ici peuvent être reconfigurées ultérieurement via la page Paramètres.

Restaurer une sauvegarde de configuration

Si vous disposez d'un fichier de configuration sauvegardé à partir d'un autre hôte Android Test Station, vous pouvez télécharger le fichier pour copier toutes les configurations modifiées à partir de cet hôte en cliquant sur le bouton Télécharger le fichier .

Restaurer la sauvegarde de la configuration

Figure 1. Restauration d'une sauvegarde de configuration.

Définir le compte de service par défaut

Vous pouvez définir un compte de service qu'Android Test Station utilise par défaut lors de l'accès à vos ressources (par exemple, Google Cloud Storage, Google Drive). Pour authentifier votre compte de service, cliquez sur Télécharger la clé de compte de service et sélectionnez le fichier de clé JSON de votre compte de service.

Définir un compte de service

Figure 2. Définition du compte de service.

Lorsque le compte de service est authentifié avec succès, l'adresse e-mail du compte apparaît dans le coin supérieur droit de la page. Pour modifier le compte de service, cliquez sur le nom du compte, supprimez le compte par défaut actuel et téléchargez une nouvelle clé de compte de service.

Changer de compte de service

Figure 3. Modification du compte de service.

Importer des ensembles de configuration

Un ensemble de configurations est un ensemble de configurations permettant d'exécuter des suites de tests, y compris les actions de périphérique associées et de créer des canaux. Les ensembles de configuration sont hébergés dans un bucket Google Cloud Storage (GCS) spécifique. Après avoir authentifié le canal de build GCS avec votre compte Google, vous voyez une liste de tous les ensembles de configuration disponibles.

Sélectionnez les ensembles de configuration que vous souhaitez ajouter à votre hôte Test Station et cliquez sur Import Selected .

Importer des ensembles de configuration

Figure 4. Importation d'un ensemble de configuration.

Inclure les paramètres Wi-Fi

Certains tests CTS nécessitent que votre appareil se connecte à un point d'accès Wi-Fi. Pour sélectionner votre réseau Wi-Fi, entrez le SSID WiFi et le PSK WiFi en option.

Paramètres Wifi

Figure 5. Paramètres du point d'accès Wi-Fi.

Après avoir terminé l'assistant de configuration, la page se recharge avec les nouveaux paramètres appliqués.

Connecter un appareil

Le débogage USB doit être activé pour utiliser un périphérique à des fins de test. Pour activer le débogage :

  1. Suivez les instructions dans Activer les options de développement et le débogage .

  2. Si vous prévoyez d'utiliser des versions de test Android préchargées avec des clés ADB personnalisées, placez les fichiers .adb_key personnalisés dans le répertoire ~/.android/ .

    Les fichiers sont chargés automatiquement et transmis à ADB pour activer automatiquement le débogage USB après le flashage du périphérique pour les périphériques exécutant ces versions.

  3. Connectez l'appareil à la machine hôte via USB.

    L'appareil apparaît dans l'onglet Appareils Android Test Station dans la minute qui suit l'actualisation de l'interface Web. Vous pouvez également visualiser l'état des appareils sur cet onglet.

    Connecter un appareil

    Figure 6. Connexion d'un appareil.

Les différents états de l'appareil sont :

  • Disponible : l'appareil est connecté et prêt à exécuter un test.
  • Alloué : l'appareil est connecté et exécute actuellement un test. Chaque appareil ne peut exécuter qu'un seul test à la fois. L'appareil doit donc terminer son test en cours avant d'en exécuter un nouveau.

Exécuter un test

Sélectionnez un examen

Android Test Station est livré avec un ensemble de configurations CTS prégroupées. Pour exécuter l'un de ces tests, accédez à l'onglet Suites de tests et cliquez sur Exécuter le test pour le test souhaité.

Sélectionnez un examen

Figure 7. Sélection d'un test.

Pour modifier ou ajouter de nouveaux tests, voir Ajout de tests .

Configurer l'exécution du test

Modifiez les paramètres à utiliser pour cette exécution de test spécifique. La plupart des paramètres sont préremplis avec les valeurs définies dans la configuration de test sélectionnée.

Cette étape peut être effectuée en utilisant les valeurs par défaut, mais vous pouvez modifier n'importe quel paramètre, tel que Max Retry et Command , en fonction de vos besoins.

Configurer l'exécution du test

Figure 8. Configuration d'une exécution de test.

Les paramètres du test sont :

  • Nom - Nom de la suite de tests que vous souhaitez exécuter.
  • Nombre d'exécutions : nombre de fois où cette exécution de test doit être exécutée au moment prévu. Les tests sont planifiés à l'aide de la Trade Federation , qui exécute jusqu'à 20 tests en parallèle si la capacité le permet.
  • Max Retry - Nombre maximum de fois pour réessayer un test si au moins un test échoue. Ceci est généralement défini sur 4 à 6 tentatives pour une exécution complète du CTS afin de gérer les tests irréguliers.
  • Délai d'expiration de la file d'attente : si une exécution de test reste trop longtemps dans l'état En file d'attente , elle est automatiquement annulée. Précisez ici le temps d’attente avant l’annulation. La valeur par défaut est de 24 heures.
  • Commande - La commande pour exécuter la suite de tests. Vous pouvez saisir ici des arguments de ligne de commande supplémentaires. Par exemple, exécutez un module spécifique dans CTS 8.1 avec :

    cts-suite -m ShortModuleName
    
  • Réessayer la commande - La commande permettant de réessayer une suite de tests. Vous pouvez ajouter des arguments de ligne de commande supplémentaires ici. Par exemple, pour réessayer uniquement un module spécifique dans CTS 8.1, utilisez :

    cts --retry 0 -m ShortModuleName
    

    Les arguments de nouvelle tentative peuvent différer de ceux disponibles avec la commande initiale, vérifiez donc les paramètres pris en charge sur le site officiel de la suite de tests sélectionnée.

  • Test précédent - Si vous souhaitez réexécuter un test précédent :

    • Local : si l'exécution a été démarrée sur l'hôte actuel, entrez l'ID d'exécution de test affiché lors de l'affichage des détails de l'exécution de test.

      Test local précédent

      Figure 9. Test local précédent.

    • À distance - Si l'exécution a été démarrée sur un autre hôte, téléchargez le fichier de résultats de test en sélectionnant À distance , en cliquant sur Télécharger le fichier de résultats de test et en sélectionnant un fichier dans votre stockage local.

      Exécution de test précédente à distance

      Figure 10. Test précédent à distance.

Sélectionnez les appareils

Cochez les cases pour sélectionner les appareils à allouer pour exécuter la suite de tests. Le nombre de fragments devrait automatiquement changer pour correspondre au nombre de périphériques sélectionnés.

Sélectionnez les appareils

Figure 11. Sélection des appareils.

Pour sélectionner des appareils par des attributs autres que les numéros de série des appareils, vous pouvez saisir manuellement les « Spécifications de l'appareil ». Par exemple, pour sélectionner 3 appareils dont le nom de produit est « Bramble », saisissez ce qui suit :

product:bramble;product:bramble;product:bramble

Les attributs pris en charge sont :

  • build_id
  • périphérique_série
  • type d'appareil
  • nom d'hôte
  • produit
  • variante_produit
  • sim_state

Tous les appareils sélectionnés doivent être dans l’état Disponible pour exécuter le test, et ils passent tous à l’état Alloué lorsque le test est exécuté. Une exécution de test est à l’état En file d’attente pendant qu’elle attend que les appareils deviennent disponibles.

Ajouter des actions sur l'appareil

Les actions de périphérique sont des scripts qui peuvent être exécutés avant chaque exécution de test. Certaines actions de l'appareil sont déjà configurées, comme le clignotement et le redémarrage. Pour créer de nouvelles actions sur les appareils, consultez Créer une nouvelle action sur les appareils .

Actions sur l'appareil

Figure 12. Actions du périphérique.

Pour ajouter une action de périphérique à une exécution de test, cliquez sur Ajouter une nouvelle action , cochez les cases correspondant aux actions à ajouter, puis cliquez sur Ajouter une ou plusieurs actions . Les actions de l'appareil sont effectuées séquentiellement. Vous pouvez réorganiser les actions en les faisant glisser.

Ajouter des actions

Figure 13. Réorganisation des actions.

Définir les ressources de test

Les ressources de test sont des fichiers requis pour exécuter une exécution de test. Par exemple, l'exécution de CTS nécessite un fichier android-cts*.zip , et le flashage d'un appareil nécessite que vous fournissiez l'image de construction.

L'URL de téléchargement du fichier zip de la suite de tests doit par défaut correspondre aux liens Google Drive fournis aux partenaires. Vous pouvez sélectionner un autre fichier en cliquant sur Parcourir . Dans la fenêtre contextuelle, vous pouvez saisir un lien de téléchargement de fichier, utiliser un fichier provenant d'un canal de build authentifié ou télécharger un fichier à utiliser à partir du stockage local.

Ressources de tests

Figure 14. Ressources de test.

Vous trouverez ci-dessous la fenêtre contextuelle permettant de sélectionner une ressource de test par une URL Web. Vous pouvez simplement saisir le lien URL de téléchargement et cliquer sur le bouton Sélectionner pour confirmer la sélection.

Sélecteur de ressources de test – URL Web

Figure 15. Sélecteur de ressources de test – URL Web.

Si vous avez téléchargé des ressources sur Google Grive, Google Cloud Storage (GCS) ou d'autres chaînes, vous pouvez également accéder à l'onglet de la chaîne spécifique et y sélectionner des ressources. Voici un exemple de sélection d'une ressource sur Google Drive.

Sélecteur de ressources de test – Google Drive

Figure 16. Sélecteur de ressources de test - Google Drive.

En plus de la simple sélection de fichiers, les caractères génériques sont également pris en charge dans le champ Nom de fichier . La documentation peut être trouvée ici .

Sélecteur de ressources de test - Prise en charge des modèles génériques

Figure 17. Sélecteur de ressources de test - Prise en charge des modèles génériques.

Vous pouvez également sélectionner un fichier dans le stockage de fichiers local d'Android Test Station. Vous pouvez télécharger des fichiers dans ce stockage ou utiliser directement des fichiers et répertoires locaux .

Sélecteur de ressources de test - Magasin de fichiers local

Figure 18. Sélecteur de ressources de test - Magasin de fichiers local.

Ajouter des configurations de réexécution

Vous pouvez planifier des réexécutions qui démarrent une fois l'exécution principale terminée et charger ses résultats, mais vous pouvez utiliser différents appareils, actions ou ressources.

Ajouter des configurations de réexécution

Figure 19. Ajout de configurations de réexécution.

Démarrer un test

Après avoir entré les informations nécessaires au test, cliquez sur Démarrer le test . Si toutes les informations sont valides, le test démarre et vous êtes redirigé vers une page pour afficher les détails et la progression du test.

Démarrer le test

Figure 20. Démarrage d'un test.

Créer un plan de test

Les plans de test sont utilisés pour créer des exécutions de tests selon un calendrier périodique. Par exemple, exécuter CTS 9.0 tous les jours à 17 heures. Pour créer un nouveau plan de test, cliquez sur Créer un nouveau plan de test .

Créer un plan de test

Figure 21. Création d'un plan de test.

Configurer le plan de test

Saisissez le nom du plan de test et les étiquettes que vous souhaitez ajouter. Sélectionnez ensuite un horaire à utiliser.

  • Manuel : le plan de test crée des exécutions de test uniquement lorsqu'un utilisateur clique sur Exécuter le plan de test dans la page de liste des plans de test.
  • Périodique - Le plan de test planifie automatiquement les exécutions de tests selon le calendrier périodique sélectionné. Par exemple, planifier un test tous les jours à 17h00.
  • Personnalisé : le plan de test planifie automatiquement les exécutions de tests en fonction de l' expression cron saisie. Par exemple, pour planifier une exécution de test tous les jours à 17h00, l'expression cron est 0 17 * * * .

Configurer le plan de test

Figure 22. Configuration d'un plan de test.

Ajouter des suites de tests

Ajoutez les suites de tests que vous souhaitez planifier par le plan de test en cliquant sur + Ajouter une configuration d'exécution de test . Sélectionnez une suite de tests dans la liste déroulante Nom et cliquez sur Étape suivante . Sélectionnez ensuite les appareils sur lesquels vous souhaitez exécuter le test et cliquez sur Ajouter une configuration . Vous pouvez ajouter plusieurs configurations pour chaque plan de test.

Configurer l'exécution du test

Figure 23. Configuration d'une exécution de test.

Ajouter des actions sur l'appareil

Ajoutez les actions de périphérique que vous souhaitez exécuter avant chaque exécution de test. Voir Ajout d'actions sur l'appareil pour plus de détails.

Ajouter des actions sur le périphérique

Figure 24. Ajout d'actions sur le périphérique.

Définir les ressources de test

L'ajout de ressources de test aux plans de test revient à les ajouter à des exécutions de tests individuelles. Voir Définition des ressources de test pour plus de détails.

Définir les ressources de test

Figure 25. Configuration des ressources de test.

Afficher les exécutions de tests

Liste des tests

Consultez la liste des exécutions de tests planifiées sur la page Exécutions de tests. Cliquez sur Afficher pour voir plus de détails sur une exécution de test.

Vous pouvez également filtrer la liste en saisissant une chaîne dans la barre de filtre et en appuyant sur la touche Entrée . Vous pouvez utiliser plusieurs filtres en les séparant par une virgule. Le filtre renvoie toutes les lignes contenant le texte exact (aucune correspondance de sous-chaîne) dans aucune colonne, à l'exclusion de Status et Created .

Un filtre vide renvoie toutes les lignes. Il n'existe actuellement aucun moyen de filtrer les lignes contenant des valeurs vides.

Liste des tests

Figure 26. Liste des exécutions de tests.

Détails du test

Vous pouvez afficher les détails d'un test exécuté ici, tels que l'état, les journaux et les résultats.

Détails du test

Figure 27. Détails de l'exécution du test.

État de l'exécution du test

La progression d'un test est affichée dans la section État. S'il existe un message associé, tel que la progression du téléchargement, le motif de l'annulation ou un message d'erreur, il s'affiche également ici.

État du test

Figure 28. État de l'exécution du test.

Les états d’exécution du test sont :

  • En attente : les ressources requises sont en cours de téléchargement.
  • En file d'attente : le test est prêt à être exécuté lorsqu'un appareil devient disponible.
  • En cours d'exécution : le test est en cours d'exécution sur un appareil alloué.
  • Terminé : le test est terminé et ses résultats ont été rapportés.
  • Annulé : le test a été annulé par l'utilisateur ou a expiré lors de la recherche d'appareils disponibles.
  • Erreur - Une erreur s'est produite et a empêché l'exécution du test.

Annuler un test

Si le test n'est pas terminé, vous pouvez l'annuler en cliquant sur Annuler , puis en cliquant sur Oui dans la boîte de dialogue de confirmation. Les exécutions de tests sont également automatiquement annulées si elles restent dans l'état En file d'attente plus longtemps que le champ queue_timeout_seconds . L’annulation d’une exécution de test alors qu’elle est à l’état En cours d’exécution peut prendre quelques minutes pour prendre effet.

Annuler le test

Figure 29. Annulation d'un test.

Résultats des tests

Une fois le test terminé, les résultats sont collectés et affichés. Vous pouvez afficher des détails supplémentaires en cliquant sur la flèche de chaque exécution. Cliquez sur Afficher les fichiers de sortie pour voir les artefacts de test collectés, tels que test_result.xml et test_result_failures.html .

Résultats des tests

Figure 30. Résultats du test.

Vous pouvez afficher les journaux de l'hôte en direct et de Tradefed dans l'onglet Journaux.

Journaux d'exécution des tests

Figure 31. Onglet Journaux.

Les résultats des modules individuels se trouvent dans l'onglet Résultats des tests.

Onglet Résultats des tests

Figure 32. Onglet Résultats des tests.

Vous pouvez télécharger les fichiers utilisés comme ressources de test en cliquant sur Ouvrir dans l'onglet Ressources de test.

Onglet Ressources de test

Figure 33. Onglet Ressources de test.

Pour voir les détails de l'exécution du test, tels que create_time , accédez à l'onglet Config.

Onglet Configuration du test

Figure 34. Onglet Configuration.

Fonctionnalités avancées

Gérer les fichiers de configuration

Android Test Station utilise des fichiers de configuration écrits en YAML pour charger des options prédéfinies telles que des tests, des canaux de création et des actions sur l'appareil. Un exemple de fichier de configuration pour certaines options est présenté ci-dessous.

// example_file.yaml
tests:
- id : android.cts.9_0.arm
  name: CTS 9.0 (ARM)
  test_resource_defs:
  - name: android-cts.zip
    default_download_url: https://dl.google.com/dl/android/cts/android-cts-9.0_r7-linux_x86-arm.zip
    test_resource_type: TEST_PACKAGE
  command: cts
  env_vars:
  - name: TF_PATH
    value: ${TF_WORK_DIR}/android-cts/tools:${TF_WORK_DIR}/android-cts/testcases
  - name: LD_LIBRARY_PATH
    value: ${TF_WORK_DIR}/android-cts/lib:${TF_WORK_DIR}/android-cts/lib64
  setup_scripts:
  output_file_patterns:
  - android-cts/logs/latest/.*
  - android-cts/results/latest/.*\.html
  - android-cts/results/latest/compatibility_result\..*
  - android-cts/results/latest/logo.png
  - android-cts/results/latest/test_result.xml
  result_file: test_result.xml
  java_properties:
  - name: CTS_ROOT
    value: ${TF_WORK_DIR}
  context_file_dir: android-cts/results/
  context_file_pattern: '[\d_\.]+\.zip'
  retry_command_line: retry --retry 0
  runner_sharding_args: --shard-count ${TF_SHARD_COUNT}

build_channels:
- id: google_drive
  name: Google Drive
  provider_name: Google Drive

device_actions:
- id: flash
  name: Flash
  test_resource_defs:
  - name: bootloader.img
    test_resource_type: DEVICE_IMAGE
  - name: radio.img
    test_resource_type: DEVICE_IMAGE
  - name: img.zip
    test_resource_type: DEVICE_IMAGE
  tradefed_target_preparers:
  - class_name: com.android.tradefed.targetprep.RunHostCommandTargetPreparer
    option_values:
    - name: work-dir
      values:
      - ${TF_WORK_DIR}
    - name: host-setup-command
      values:
      - adb -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL flash bootloader bootloader.img
      - fastboot -s $SERIAL flash radio radio.img
      - fastboot -s $SERIAL reboot-bootloader
      - fastboot -s $SERIAL -w update img.zip
      - adb -s $SERIAL wait-for-device
    - name: host-cmd-timeout
      values:
      - 10m

Lorsque vous configurez votre instance Android Test Station, vous pouvez partager votre configuration avec d'autres utilisateurs en l'exportant sous forme de fichier. Pour ce faire, rendez-vous sur la page Paramètres et cliquez sur Exporter en haut à droite.

Gestion des fichiers de configuration

Figure 35. Gestion des fichiers de configuration.

Une fois votre fichier de configuration téléchargé, partagez-le avec d'autres utilisateurs. Ils peuvent ajouter le fichier de configuration à leur instance Android Test Station en cliquant sur Importer et en sélectionnant le fichier de configuration.

Créer une nouvelle action sur l'appareil

Les actions sur les appareils sont utilisées pour automatiser le processus de configuration des appareils. Les actions sont des scripts exécutés sur chaque appareil sur lequel le test est exécuté avant chaque exécution de test, y compris avant les nouvelles tentatives. Pour afficher une liste des actions de périphérique disponibles, accédez à la page Paramètres et cliquez sur l'onglet Actions du périphérique. Plusieurs actions de l'appareil sont déjà configurées, telles que le redémarrage et le flashage.

Onglet Actions sur le périphérique

Figure 36. Onglet Actions du périphérique.

Ajouter une nouvelle action sur l'appareil

  1. Cliquez sur Nouvelle action sur l'appareil .

    Bouton d'action sur un nouveau périphérique

    Figure 37. Bouton d'action sur un nouveau périphérique.

  2. Entrez un nom et une description.

    Nom de l'action du périphérique

    Figure 38. Nom de l'action du périphérique.

  3. Cliquez sur Ajouter un préparateur cible .

  4. Entrez le nom complet de la classe Trade Federation Target Preparer, par exemple, com.android.tradefed.targetprep.RunHostCommandTargetPreparer .

    Ajouter un préparateur cible

    Figure 39. Ajout d'un préparateur cible.

    Une liste des préparateurs cibles disponibles est disponible dans la référence com.android.tradefed.targetprep .

    Liste des préparateurs cibles

    Figure 40. Liste des préparateurs cibles.

  5. Ajoutez toutes les options à utiliser avec le préparateur cible. Pour afficher les options disponibles, vérifiez targetprep pour le code source de chaque préparateur cible dans AOSP :

    Exemple d'option d'action

    Figure 41. Exemple d'option d'action.

  6. Pour ajouter une option, cliquez sur Ajouter une option de préparateur cible et entrez les valeurs requises.

    Exemple de commande d'action

    Figure 42. Exemple de commande d'action.

  7. Définissez les ressources de test nécessaires pour exécuter l'action du périphérique, par exemple, créer des images à flasher. Pour ajouter une définition de ressource, cliquez sur Ajouter une ressource de test et remplissez les champs obligatoires. Si vous savez où se trouvent vos fichiers, vous pouvez fournir une URL de téléchargement par défaut en cliquant sur Parcourir . Si les préparateurs cibles acceptent le répertoire comme ressource de test, sélectionnez Décompresser . Spécifiez ensuite le répertoire de destination relatif sous le répertoire de travail temporaire et les noms de fichiers à décompresser. Si aucun nom de fichier n'est donné, tous les fichiers sont décompressés de la ressource de test.

    Ressources de tests d'action

    Figure 43. Ressources de test d'action.

  8. Cliquez sur Mettre à jour .

    Action Enregistrer les modifications

    Figure 44. Action d'enregistrer les modifications.

Gérer les tests

Modifier un test

Pour modifier un test enregistré, accédez à la page Tests et cliquez sur Modifier sur la ligne du test que vous souhaitez modifier. Après avoir modifié la configuration du test, cliquez sur Mettre à jour .

Modifier un test

Figure 45. Modification d'un test.

Ajouter un nouveau test

Pour ajouter un nouveau test, accédez à la page Tests et cliquez sur Créer un nouveau test . Entrez les informations appropriées et cliquez sur Créer .

Créer un test

Figure 46. Création d'un test.

Copier un test

Figure 47. Copie d'un test.

Exporter les configurations d'hôte

Après avoir configuré un hôte, vous pouvez exporter les configurations de l'hôte vers un fichier. Vous pouvez télécharger ce fichier sur d'autres hôtes pour copier les configurations enregistrées.

Pour exporter les configurations d'un hôte, accédez à la page Paramètres et cliquez sur Exporter dans le coin supérieur droit.

Exportation des configurations d'hôte

Figure 48. Exportation d'une configuration d'hôte.

Pour importer un fichier de configuration d'hôte, accédez à la page Paramètres et cliquez sur Importer dans le coin supérieur droit.

Importation des configurations d'hôte

Figure 49. Importation d'une configuration d'hôte.

Utiliser des fichiers et répertoires locaux

À partir de la version R11, les fichiers du répertoire $HOME/.ats_storage sont automatiquement accessibles dans Android Test Station. Copiez ou déplacez un fichier dans ce répertoire, vous pourrez ensuite le sélectionner dans l'onglet Fichier local lors de la planification d'un test.

cp /path/to/file $HOME/.ats_storage

Sélection d'un fichier local

Figure 50. Sélection d'un fichier dans le répertoire $HOME/.ats_storage .

Vous pouvez monter des répertoires supplémentaires dans le magasin de fichiers local avec l'indicateur --mount_local_path .

mtt start --mount_local_path=/path/to/dir1 --mount_local_path=/path/to/dir2:renamed_dir2

Répertoires montés supplémentaires

Figure 51. Répertoires supplémentaires montés dans le magasin de fichiers local.

Activer le mode multi-hôtes

Avec le mode multi-hôtes, les utilisateurs peuvent utiliser un seul hôte de contrôleur ATS pour gérer les appareils et les tests sur plusieurs hôtes de travail ATS.

Architecture en mode multi-hôtes

Figure 52. Architecture en mode multi-hôtes.

  1. Pour démarrer le contrôleur ATS, utilisez la commande suivante :

    mtt start --operation_mode=ON_PREMISE
    
  2. Vérifiez que le contrôleur est accessible à http://${CONTROLLER_HOSTNAME}:8000 .

  3. Pour démarrer les Workers, utilisez la commande suivante :

    mtt start --control_server_url=http://CONTROLLER_HOSTNAME:8000 --operation_mode=ON_PREMISE
    

Si votre réseau ne permet pas aux hôtes de communiquer entre eux, vous devez suivre les instructions de configuration plus avancées ci-dessous sur ATS Worker.

  1. Connectez les deux hôtes à l'aide des tunnels SSH. Sélectionnez les ports pour les ports principal et du serveur de fichiers, par exemple 9000 et 9006.

    ssh -L ATS_PORT:localhost:8000 -L FS_PORT:localhost:8006 CONTROLLER_HOSTNAME
    
  2. Configurez et démarrez ATS.

    DOCKER_GATEWAY_IP_ADDRESS=$(ip -4 addr show dev docker0 | grep -Eo 'inet [.0-9]+/' | grep -Eo '[.0-9]+')
    socat tcp-listen:ATS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:ATS_PORT &
    socat tcp-listen:FS_PORT,bind="${DOCKER_GATEWAY_IP_ADDRESS}",reuseaddr,fork tcp-connect:127.0.0.1:FS_PORT &
    mtt start --control_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:ATS_PORT \
                    --control_file_server_url=http://${DOCKER_GATEWAY_IP_ADDRESS}:FS_PORT \
                    --operation_mode=ON_PREMISE
    

Nettoyeur de fichiers

Le nettoyeur de fichiers est une tâche cron qui s'exécute toutes les heures pour nettoyer les fichiers en fonction des configurations définies par l'utilisateur. ATS dispose de deux configurations par défaut pour archiver les résultats des tests et supprimer les fichiers temporaires. Ce guide explique comment personnaliser les politiques et les configurations pour gérer efficacement vos fichiers.

Stratégies

Une politique définit l'opération à effectuer sur les fichiers ou répertoires, ainsi que les critères de sélection des cibles. Les opérations disponibles sont indiquées dans le tableau :

Type d'opération Paramètres
ARCHIVE remove_file : Si true , supprime le fichier après l'archivage.
DELETE

Les critères sont basés sur les attributs des fichiers et les informations système. Les critères disponibles sont indiqués dans le tableau :

Type de critère Description Paramètres
LAST_MODIFIED_TIME Filtrez les fichiers en fonction de leur date et heure de dernière modification. ttl : Différents types d'expressions temporelles sont pris en charge, par exemple, 10m , 2h , 7 days , 4w . Voir pytimeparse pour les formats pris en charge.
LAST_ACCESS_TIME Filtrez les fichiers en fonction de leur date et heure du dernier accès. Identique à LAST_MODIFIED_TIME .
NAME_MATCH Filtrez les fichiers en fonction de leur nom à l'aide d'une expression régulière. pattern : Expression régulière, par exemple, [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip pour correspondre résultat zips.
SYSTEM_AVAILABLE_SPACE Déclenchez des actions en fonction de l’espace disponible sur le système. threshold : Déclenchez une action lorsque l'espace disponible tombe en dessous du seuil, par exemple, 200 (B), 200KB , 200MB , 200GB , 2TB .

Nouvelle politique de nettoyage de fichiers

Figure 53. Ajoutez une nouvelle stratégie de nettoyage de fichiers.

Configurations

Une configuration combine une ou plusieurs stratégies avec des répertoires spécifiques. Les fichiers et répertoires contenus dans les répertoires spécifiés sont traités en fonction des politiques définies. Les stratégies sont appliquées dans l'ordre dans lequel elles apparaissent dans la configuration.

Tous les répertoires cibles doivent être situés sous le répertoire /data . Si votre configuration spécifie le répertoire cible comme logs , il est interprété comme /data/logs .

Modifier la configuration du nettoyeur de fichiers

Figure 54. Modifiez la configuration du nettoyeur de fichiers.

Réinitialiser

Cliquer sur Réinitialiser les paramètres ramène la configuration du nettoyeur de fichiers à son état par défaut. Cette action efface TOUS les éléments personnalisés.

Réinitialiser les paramètres du nettoyeur de fichiers

Figure 55. Réinitialisez les paramètres du nettoyeur de fichiers.

Soutien

Rapports de bogues

Votre contribution à Android Test Station contribue à améliorer le développement de l'outil, et nous souhaitons votre contribution ! Consultez les notes de version ATS pour plus de détails sur la dernière version. Pour signaler des bogues ou proposer des suggestions, veuillez déposer un rapport de bogue . Les partenaires doivent signaler les bugs ou les suggestions via leurs canaux partenaires.