OmniLab Android Test Station

OmniLab ATS est un outil de test que les développeurs Android et les ingénieurs de test peuvent utiliser d'utiliser une interface utilisateur pour exécuter des suites de tests Android standards, comme Android Compatibility Test Suite (CTS) Cet outil sert d'interface Web pour divers frameworks de test, Trade Fédération (TF) et Google Mobly, qui vous permet d'exécuter CTS et tests multi-appareils sur un ensemble d'appareils de test avec une configuration minimale de planifier l'exécution continue des tests.

Configurer OmniLab ATS

Cette section explique comment installer et configurer OmniLab ATS.

OmniLab ATS utilise le code source provenant des emplacements suivants:

Installer OmniLab ATS

Respectez la configuration matérielle et logicielle requise pour les suites de tests que vous exécutez.

Pour connaître les exigences liées à CTS, consultez source.android.com.

Aucune configuration matérielle supplémentaire n'est requise pour OmniLab ATS, mais nous vous recommandons Exigences relatives à l'hôte CTS comme point de départ.

Il existe deux façons d'installer OmniLab ATS:

Installer avec le programme d'installation

Sur Ubuntu 20.04 et versions ultérieures, le programme d'installation installe et configure tous les programmes et les ressources nécessaires à l'exécution d'OmniLab ATS.

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 de la CLI OmniLab ATS.

Installer manuellement

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

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

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

Installer Python 3

La CLI OmniLab ATS est vérifiée par rapport aux versions 3.7 à 3.11 de Python.

Pour Ubuntu 16.04 ou version antérieure, commencez par ajouter le dépôt pour Python 3 des éléments suivants:

  • Exécutez cette commande :

    sudo add-apt-repository ppa:deadsnakes/ppa
    
  • Créer et installer le dépôt de la source.

Pour installer Python 3, exécutez les commandes suivantes:

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 les commandes suivantes à la place:

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

Obtenir la CLI OmniLab ATS

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

Démarrer OmniLab ATS

Lancez OmniLab ATS à l'aide de la commande suivante:

mtt start

Lorsque l'interface utilisateur est lancée pour la première fois, elle peut mettre quelques minutes à apparaître. La CLI affiche une URL Web permettant d'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'option --port.

Si une version plus récente est disponible, vous pouvez passer à la version actuelle. Vous pouvez consultez les notes de version pour connaître les dernières versions.

Pour effectuer la mise à jour vers la version actuelle, exécutez la commande suivante:

mtt start --force_update

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

mtt stop

Pour afficher la liste des autres commandes, utilisez la commande suivante:

mtt --help

Sauvegarder et restaurer la base de données

Pour sauvegarder la base de données ATS OmniLab, 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 d'accueil:

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

Pour effectuer la restauration, 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

Lorsque vous installez et exécutez OmniLab ATS pour la première fois, l'assistant de configuration effectue en quelques étapes pour vous aider à personnaliser l'outil en fonction de votre environnement. N'importe quelle valeur les modifications que vous apportez ici pourront être reconfigurées ultérieurement via la page "Paramètres".

Restaurer une sauvegarde de configuration

Si vous avez un fichier de configuration sauvegardé à partir de un autre hôte OmniLab ATS, vous pouvez importer le fichier pour copier les configurations modifié à partir de cet hôte en cliquant sur le bouton Importer un fichier.

Restaurer la sauvegarde de 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'OmniLab ATS utilise par défaut lors de l'accès à vos ressources (par exemple, Google Cloud Storage ou Google Drive). Pour authentifier votre compte de service, cliquez sur Importez une clé de compte de service, puis sélectionnez le fichier de clé JSON de votre compte de service.

Définir le compte de service

Figure 2. Définir le compte de service

Une fois le compte de service authentifié, l'adresse e-mail du compte s'affiche dans l'angle supérieur droit de la page. Pour changer de service, procédez comme suit : cliquez sur son nom, supprimez le compte par défaut actuel une nouvelle clé de compte de service.

Changer de compte de service

Figure 3. Modifier le 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 des actions sur les appareils et créer des canaux. Les ensembles de configuration sont hébergés dans un bucket bucket Cloud Storage (GCS). Après avoir authentifié le canal de compilation GCS avec votre Google, la liste de tous les ensembles de configuration disponibles s'affiche.

Sélectionnez les ensembles de configuration que vous souhaitez ajouter à votre hôte Test Station, puis cliquez sur Importer les éléments sélectionnés :

Importer des ensembles de configuration

Figure 4. Importer 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, saisissez le SSID Wi-Fi et, si vous le souhaitez, la clé pré-partagée Wi-Fi.

Paramètres Wi-Fi

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

Une fois l'assistant de configuration terminé, la page est actualisée avec les nouveaux paramètres. appliquée.

Connecter un appareil

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

  1. Suivez les instructions fournies dans l'article Activez les options pour les développeurs et débogage.

  2. Si vous prévoyez d'utiliser des builds Android de test préchargés 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 l'USB après avoir flashé pour les appareils exécutant ces builds.

  3. Connectez l'appareil à la machine hôte via un câble USB.

    L'appareil apparaît dans l'onglet "Appareils ATS OmniLab" dans la minute qui suit. en actualisant l'interface Web. Vous pouvez également afficher l'état des appareils cet onglet.

    Connecter un appareil

    Figure 6. Connexion d'un appareil.

Les différents états d'un appareil sont les suivants:

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

Effectuer un test

Sélectionner un test

OmniLab ATS est fourni avec un ensemble de configurations CTS pré-groupées. Pour exécuter l'une des ces tests, accédez à l'onglet "Suites de tests", puis cliquez sur Exécuter le test pour test.

Sélectionner un test

Figure 7. Sélection d'un test.

Pour modifier ou ajouter des tests, consultez la section Ajouter des 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érempli avec les valeurs définies dans la configuration de test sélectionnée.

Vous pouvez effectuer cette étape avec les valeurs par défaut, mais vous pouvez les paramètres tels que Max Réessayer et Command selon vos besoins.

Configurer l'exécution du test

Figure 8. Configurer l'exécution d'un test

Les paramètres d'exécution du test sont les suivants:

  • Nom : nom de la suite de tests que vous souhaitez exécuter.
  • Nombre d'exécutions : nombre de fois que l'exécution de ce test doit être exécutée sont programmés. Les exécutions de test sont planifiées la fédération commerciale, qui exécute jusqu'à les tests s'exécutent en parallèle s'ils en ont la capacité.
  • Nombre maximal de nouvelles tentatives : nombre maximal de nouvelles tentatives d'exécution d'un test si au moins une le test échoue. Il est généralement défini sur 4 à 6 tentatives pour une exécution CTS complète gérer les tests irréguliers.
  • Expiration du délai de la file d'attente : si l'exécution d'un test reste à l'état Queued (En file d'attente) trop longtemps, elle est automatiquement annulée. Spécifier le délai d'attente avant le l'annulation ici. La valeur par défaut est de 24 heures.
  • Commande : commande permettant d'exécuter la suite de tests. Vous pouvez saisir des informations vos arguments de ligne de commande. Par exemple, exécutez un module spécifique dans CTS 8.1. par:

    cts-suite -m ShortModuleName
    
  • Commande réessayer : commande permettant de relancer une suite de tests. Vous pouvez ajouter d'autres arguments de ligne de commande. Par exemple, pour réessayer, module spécifique dans CTS 8.1, utilisez:

    cts --retry 0 -m ShortModuleName
    

    Les arguments "Réessayer" peuvent différer de ceux disponibles avec la commande initiale, Vérifiez donc les paramètres acceptés sur le site officiel pour le test sélectionné suite.

  • Previous Test Run (Exécution de test précédente) - Si vous souhaitez réexécuter un précédent test:

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

      Exécution de test précédente locale

      Figure 9. Exécution du test précédent en local.

    • À distance : si l'exécution a été lancée sur un autre hôte, importez le test de résultats en sélectionnant Remote (Distant), puis en cliquant sur Upload Test Results (Importer les résultats du test) Fichier, puis sélectionnez un fichier dans votre espace de stockage local.

      Exécution du test précédent à distance

      Figure 10. Exécution du test précédent à distance.

Sélectionner des appareils

Cochez les cases pour sélectionner les appareils à allouer à l'exécution du test. suite. Le nombre de segments devrait automatiquement changer pour correspondre au nombre de appareils sélectionnés.

Sélectionner des appareils

Figure 11 : Sélection d'appareils.

Pour sélectionner des appareils en fonction d'attributs autres que leur série, vous pouvez saisissez "Device Specs" (Spécifications de l'appareil). Par exemple, pour sélectionner trois appareils dont le nom de produit est "bramble", saisissez ce qui suit:

product:bramble;product:bramble;product:bramble

Les attributs acceptés sont les suivants:

  • build_id
  • appareil_série
  • device_type (type d'appareil)
  • nom d'hôte
  • produit
  • product_variant [variante_produit]
  • état_sim

Tous les appareils sélectionnés doivent être à l'état Available (Disponible) pour exécuter le test. Elles passent toutes à l'état Alloué lors de l'exécution du test. A l'exécution du test est à l'état Queued (En file d'attente) alors que les appareils disponibles.

Ajouter des actions sur l'appareil

Les actions sur les appareils sont des scripts qui peuvent être exécutés avant l'exécution de chaque test. Un peu les actions de l'appareil sont déjà configurées, comme le flash et le redémarrage. À créer des actions sur l'appareil, consultez Créez une action sur l'appareil.

Actions sur l'appareil

Figure 12. Actions de l'appareil.

Pour ajouter une action sur un appareil à un test, cliquez sur Ajouter une action, sélectionnez l'icône cases à cocher correspondant aux actions à ajouter, puis cliquez sur Add Action(s) (Ajouter une ou plusieurs actions). Actions de l'appareil sont effectuées de manière séquentielle. 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 un test. Par exemple, si vous exécutez Pour utiliser CTS, vous devez disposer d'un fichier android-cts*.zip. Pour flasher un appareil, vous devez fournir l'image de compilation.

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

Ressources de test

Figure 14. Ressources de test

La fenêtre pop-up ci-dessous permet de sélectionner une ressource de test en fonction d'une URL Web. Vous pouvez saisissez le lien de l'URL de téléchargement, puis cliquez sur le bouton Sélectionner pour confirmer de votre choix.

Sélecteur de ressources test - URL Web

Figure 15. Test du sélecteur de ressources - URL Web.

Si vous avez importé des ressources dans Google Grive, Google Cloud Storage (GCS) ou d'autres chaînes, vous pouvez accéder à l'onglet de la chaîne de ressources. Voici un exemple de sélection d'une ressource à partir de Google Drive.

Sélecteur de ressources de test – Google Drive

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

En plus de sélectionner uniquement des fichiers, les caractères génériques sont également pris en charge dans Filename (Nom de fichier). Pour en savoir plus, consultez la documentation cliquez ici.

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

Figure 17. Sélecteur de ressources de test : prise en charge des formats de caractères génériques

Vous pouvez également sélectionner un fichier dans le stockage local de fichiers d'OmniLab ATS. Vous pouvez importer des fichiers dans cet espace de stockage, ou utiliser directement les fichiers et répertoires locaux.

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

Figure 18. Test du sélecteur de ressources : 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 charge ses résultats, mais il peut utiliser différents appareils, actions ou ressources.

Ajouter des configurations de réexécution

Figure 19. Ajouter des configurations de réexécution

Lancer un test

Après avoir saisi les informations nécessaires pour exécuter le test, cliquez sur Démarrer le test Exécuter. Si toutes les informations sont valides, l'exécution du test démarre redirigé vers une page pour afficher les détails et la progression de l'exécution du test.

Démarrer l'exécution du test

Figure 20. Lancement d'une exécution de test.

Créer un plan de test

Les plans de test permettent de créer des exécutions de test selon une programmation périodique. Par exemple, exécutant CTS 9.0 tous les jours à 17h. Pour créer un plan de test, cliquez sur Créer un nouveau plan de test.

Créer un plan de test

Figure 21. Créer 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 à utiliser.

  • Manuel : le plan de test crée des exécutions de test uniquement lorsqu'un utilisateur clique sur Exécutez le plan de test sur la page de la liste des plans de test.
  • Périodique : le plan de test programme automatiquement les exécutions du test sur le programmation périodique sélectionnée. Par exemple, planifier l'exécution d'un test tous les jours à 17h.
  • Personnalisé : le plan de test planifie de manière autmatique les exécutions de test en fonction de la Expression Cron saisie. Par exemple, pour planifier l'exécution d'un test tous les jours à 17h, 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 programmer dans le plan de test en cliquant sur + Ajouter configuration d'exécution de test. Sélectionnez une suite de tests dans le menu déroulant Nom, puis cliquez sur Étape suivante. Sélectionnez ensuite les appareils sur lesquels vous souhaitez exécuter le test et cliquez sur Add Configuration (Ajouter une configuration). Vous pouvez ajouter plusieurs configurations à chaque test du client.

Configurer l'exécution du test

Figure 23. Configurer l'exécution d'un test

Ajouter des actions sur l'appareil

Ajoutez les actions sur l'appareil que vous souhaitez exécuter avant chaque test. Pour en savoir plus, consultez Ajouter des actions sur l'appareil.

Ajouter des actions sur l'appareil

Figure 24. Ajouter des actions sur l'appareil

Définir les ressources de test

Ajouter des ressources de test aux plans de test revient à les ajouter à des plans de test individuels s'exécute. Pour en savoir plus, consultez Définir des ressources de test.

Définir les ressources de test

Figure 25. Définition des ressources de test

Afficher les exécutions de test

Liste des exécutions de test

Consultez la liste des exécutions de test planifiées sur la page "Exécutions de test". Cliquez sur Afficher pour en savoir plus sur l'exécution d'un 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 (pas de sous-chaîne correspondantes) dans n'importe quelle colonne, à l'exception des colonnes Status (État) et Created (Créée).

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

Liste des exécutions de test

Figure 26. Liste des exécutions de test.

Détails de l'exécution du test

Vous pouvez y afficher les détails d'une exécution de test, tels que son état, ses journaux résultats.

Détails de l'exécution du test

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

État d'exécution du test

La progression de l'exécution d'un test est indiquée dans la section "État". S'il existe un lien tel que la progression du téléchargement, le motif de l'annulation ou un message d'erreur, il est comme indiqué ici.

État de l'exécution du test

Figure 28. État d'exécution du test.

Les états d'exécution du test sont les suivants:

  • 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 a présenté les résultats.
  • Annulé : le test a été annulé par l'utilisateur ou a expiré pendant la tentative de trouver les appareils disponibles.
  • Erreur : une erreur a empêché l'exécution du test.

Annuler une exécution de test

Si l'exécution du test n'est pas terminée, vous pouvez l'annuler en cliquant sur Annuler et Cliquez ensuite sur Oui dans la boîte de dialogue de confirmation. Les exécutions de test sont également sont automatiquement annulées s'ils restent à l'état Queued (en file d'attente) plus longtemps que queue_timeout_seconds. Annulation d'une exécution de test à l'état Running (En cours d'exécution) peut prendre quelques minutes.

Annuler l'exécution du test

Figure 29. Annulation d'une exécution de test.

Résultats du test

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

Résultats du test

Figure 30. Résultats du test.

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

Journaux d'exécution de test

Figure 31. Journaux.

Les résultats des modules individuels figurent dans l'onglet "Résultats du test".

Onglet "Résultats du test"

Figure 32. Onglet "Résultats du test".

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

Onglet "Ressources de test"

Figure 33. Tester les ressources.

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

Onglet "Configuration de test"

Figure 34. Onglet "Configuration".

Fonctionnalités avancées

Gérer les fichiers de configuration

OmniLab ATS utilise des fichiers de configuration écrits en YAML pour : charger des options prédéfinies telles que les tests, les canaux de développement et les actions sur l'appareil ; Voici un exemple de fichier de configuration:

// 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 ATS OmniLab, vous pouvez partager votre configuration avec d'autres utilisateurs en l'exportant en tant que fichier. Pour cela, accédez à la page "Paramètres" cliquez sur Exporter en haut à droite.

Gestion des fichiers de configuration

Figure 35. Gestion des fichiers de configuration

Une fois le fichier de configuration téléchargé, partagez-le avec d'autres utilisateurs. Il peut ajouter le fichier de configuration à son instance ATS OmniLab en cliquant sur Cliquez sur Importer et sélectionnez le fichier de configuration.

Créer une action sur l'appareil

Les actions de l'appareil permettent d'automatiser le processus de configuration de l'appareil. Les actions sont des scripts exécutés sur chaque appareil avant chaque exécution, y compris avant les nouvelles tentatives. Pour afficher la liste des actions disponibles sur l'appareil, accédez aux Paramètres , puis cliquez sur l'onglet Actions sur l'appareil. Plusieurs actions sur l'appareil déjà configurées, comme le redémarrage et le flash.

Onglet "Actions sur l'appareil"

Figure 36. Onglet "Actions sur l'appareil".

Ajouter une action sur l'appareil

  1. Cliquez sur Nouvelle action sur l'appareil.

    Bouton d'action pour un nouvel appareil

    Figure 37. Bouton d'action du nouvel appareil.

  2. Saisissez un nom et une description.

    Nom de l'action sur l'appareil

    Figure 38. Nom de l'action sur l'appareil.

  3. Cliquez sur Add Target Preparer (Ajouter un préparateur de cible).

  4. Indiquez la Fédération d'échange cible. Nom complet de la classe "Preparer", par exemple com.android.tradefed.targetprep.RunHostCommandTargetPreparer

    Ajouter un préparateur de cible

    Figure 39. Ajouter un "préparateur de cible"

    Vous trouverez une liste des préparateurs de cibles disponibles dans le com.android.tradefed.targetprep. référence.

    Liste des préparateurs de cibles

    Figure 40. Liste des préparateurs de cibles.

  5. Ajoutez les options à utiliser avec le préparateur de cible. Pour afficher les options disponibles, procédez comme suit : cocher targetprep pour le code source de chaque préparateur de cible dans AOSP:

    Exemple d'option d'action

    Figure 41. Exemple d'option d'action.

  6. Pour ajouter une option, cliquez sur Add Target Preparer Option (Ajouter une option de préparation des cibles), puis saisissez le les valeurs obligatoires.

    Exemple de commande d'action

    Figure 42. Exemple de commande d'action.

  7. Définissez les ressources de test nécessaires à l'exécution de l'action sur l'appareil, pour par exemple, créer des images pour le flash. Pour ajouter une définition de ressource, cliquez sur Add Test Resource (Ajouter une ressource de test) et renseignez les champs obligatoires. Si vous savez où l'emplacement de vos fichiers, vous pouvez fournir une URL de téléchargement par défaut en cliquant 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 dans le répertoire de travail temporaire et dans le champ File Names (Noms de fichiers) décompressée. Si aucun nom de fichier n'est indiqué, tous les fichiers sont décompressés la ressource de test.

    Ressources pour le test des actions

    Figure 43. Ressources de test d'action.

  8. Cliquez sur Mettre à jour.

    Action Enregistrer les modifications

    Figure 44. Action Enregistrer les modifications.

Gérer les tests

Modifier un test

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

Modifier un test

Figure 45. Modifier un test

Ajouter un test

Pour ajouter un test, accédez à la page "Tests", puis cliquez sur Créer un test. Entrée les informations appropriées, puis 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 ses configurations dans un fichier. Vous pouvez importer 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", puis cliquez sur Exporter. en haut à droite.

Exporter des configurations d'hôte

Figure 48 : Exporter 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 l'angle supérieur droit.

Importer des configurations d'hôte

Figure 49. Importer une configuration d'hôte

Utiliser des fichiers et des répertoires locaux

À partir de la version R11, les fichiers du répertoire $HOME/.ats_storage sont automatiquement accessibles dans OmniLab ATS. Copiez ou déplacez un fichier répertoire, vous pouvez le sélectionner dans l'onglet Fichier local au moment de planifier exécution du test.

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

Sélectionner un fichier local

Figure 50. Sélectionner un fichier dans le répertoire $HOME/.ats_storage

Vous pouvez installer des répertoires supplémentaires dans le magasin de fichiers local à l'aide de la commande --mount_local_path.

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

Répertoires installés supplémentaires

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

Activer le mode multi-hôtes

En mode multi-hôte, les utilisateurs peuvent utiliser un seul hôte de contrôleur ATS pour gérer et des tests sur plusieurs hôtes de travailleur ATS.

Architecture en mode multi-hôte

Figure 52. Architecture en mode multi-hôte

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

    mtt start --operation_mode=ON_PREMISE
    
  2. Vérifiez que la manette est accessible à l'adresse http://${CONTROLLER_HOSTNAME}:8000.

  3. Pour démarrer les nœuds de calcul, utilisez la commande suivante:

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

Si votre réseau n'autorise pas les hôtes à communiquer entre eux, vous devez suivre les instructions de configuration plus avancées ci-dessous sur un nœud de calcul ATS.

  1. Connecter les deux hôtes à l'aide de tunnels SSH Sélectionnez les ports auxquels principal et le port 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 les configurations définies par l'utilisateur. L'ATS dispose de deux configurations par défaut pour archiver le test exécuter les résultats et supprimer les fichiers temporaires. Ce guide vous explique comment personnaliser les stratégies et les configurations pour gérer efficacement vos fichiers.

Règles

Une stratégie définit l'opération à effectuer sur des fichiers ou des répertoires. pour sélectionner les cibles. Les opérations disponibles sont présentées dans le tableau:

Type d'opérationParamètres
ARCHIVEremove_file: si la valeur est true, le fichier est supprimé après l'archivage.
DELETE

Les critères sont basés sur les attributs du fichier et les informations système. Disponible sont indiqués dans le tableau:

Type de critèreDescriptionParamètres
LAST_MODIFIED_TIMEFiltrez les fichiers en fonction de la date et de l'heure de leur dernière modification.ttl: différents types d'expressions de temps sont acceptés, par exemple 10m, 2h, 7 days et 4w. Consultez pytimeparse pour connaître les formats compatibles.
LAST_ACCESS_TIMEFiltrez les fichiers en fonction de la date et de l'heure auxquelles ils ont accédé pour la dernière fois.Identique à LAST_MODIFIED_TIME.
NAME_MATCHFiltrez les fichiers en fonction de leur nom à l'aide d'expressions régulières.pattern: expression régulière (par exemple, [a-f0-9]{8}-([a-f0-9]{4}-){3}[a-f0-9]{12}\.zip) pour faire correspondre les résultats au format ZIP.
SYSTEM_AVAILABLE_SPACEDéclencher des actions en fonction de l'espace disponible sur le système.threshold: déclenche l'action lorsque l'espace disponible passe en dessous du seuil, par exemple 200(B), 200KB, 200MB, 200GB, 2TB.

Nouvelle règle de nettoyage de fichiers

Figure 53. Ajoutez une règle de nettoyage de fichiers.

Configurations

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

Tous les répertoires cibles doivent se trouver dans le répertoire /data. Si votre "config" spécifie le répertoire cible comme logs, elle est interprétée comme /data/logs

Modifier la configuration du nettoyage de fichiers

Figure 54. Modifiez la configuration du nettoyage de fichiers.

Réinitialiser

Cliquer sur Réinitialiser les paramètres rétablit la configuration de l'outil de nettoyage de fichiers l'état par défaut. Cette action efface TOUS les éléments personnalisés.

Réinitialiser les paramètres de nettoyage de fichiers

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

Assistance

Rapports de bugs

Votre contribution à OmniLab ATS permet d'améliorer le développement de l'outil. Votre avis nous intéresse ! Consultez le Notes de version de l'outil OmniLab ATS pour en savoir plus sur la dernière version. Pour signaler des bugs ou proposer des suggestions, envoyer un rapport de bug. Les partenaires doivent signaler les bugs ou faire des suggestions via leurs canaux partenaires.