BuildInfo dans Tradefed

BuildInfo dans TF est un objet largement utilisé pour transporter des ressources pour la configuration et l'exécution des tests. Tout, des images d'appareils aux APK de test, est stocké ou associé dans BuildInfo. Cela permet d'accéder aux ressources de test de manière unifiée à partir d'un test et de dissocier le test de l'obtention des ressources de test.

Propriétés BuildInfo

Les deux principales propriétés des objets BuildInfo sont les attributs et les fichiers :

  • Des attributs peuvent être ajoutés avec #addBuildAttribute(). Ils représentent des libellés et des informations de chaîne pour les builds. Les attributs peuvent être utilisés pour stocker des informations liées à la compilation.
  • Des fichiers peuvent être ajoutés avec setFile(). Le fichier est suivi et géré par BuildInfo pendant le cycle de vie de l'invocation (par exemple, correctement géré pendant le partitionnement). Cela évite au test d'avoir à connaître le système de fichiers et lui permet de s'appuyer sur l'objet BuildInfo abstrait pour obtenir ses ressources.

BuildInfo sur plusieurs appareils

Lorsqu'une configuration de test est configurée avec plusieurs appareils, un objet BuildInfo existe pour chaque appareil. Cela permet de demander et de cibler des fichiers d'un appareil à un autre.

BuildInfo dans les multiversions

Il est possible d'exiger des compilations à partir de plusieurs cibles. Dans ce cas, un objet BuildInfo existe par cible. Cela permet de demander et de cibler des fichiers à partir de n'importe quelle cible.

Format proto

BuildInfo est sérialisable au format protobuf pour faciliter son utilisation dans les systèmes si nécessaire.