BuildInfo in Tradefed

BuildInfo ist in TF ein häufig verwendetes Objekt, um Ressourcen für die Testeinrichtung und ‑ausführung zu übertragen. Von Geräte-Images bis hin zu Test-APKs wird alles in BuildInfo gespeichert oder verknüpft. So können Sie einheitlich auf Testressourcen aus einem Test zugreifen und den Test von der Beschaffung von Testressourcen entkoppeln.

BuildInfo-Eigenschaften

Die beiden Haupteigenschaften von BuildInfo-Objekten sind Attribute und Dateien:

  • Attribute können mit #addBuildAttribute() hinzugefügt werden. Sie stellen Labels und Stringinformationen für die Builds dar. Mit Attributen lassen sich Informationen zum Build speichern.
  • Dateien können mit setFile() hinzugefügt werden. Die Datei wird während des Aufruflebenszyklus von BuildInfo verfolgt und verwaltet (z. B. ordnungsgemäß beim Sharding verarbeitet). So muss der Test nichts über das Dateisystem wissen, sondern kann sich stattdessen auf das abstrahierte BuildInfo-Objekt verlassen, um seine Ressourcen zu erhalten.

BuildInfo auf mehreren Geräten

Wenn eine Testkonfiguration mit mehreren Geräten eingerichtet wird, gibt es ein BuildInfo-Objekt pro Gerät. So können Dateien von einem Gerät zu einem anderen angefordert und darauf ausgerichtet werden.

BuildInfo in mehreren Builds

Es ist möglich, Builds von mehreren Zielen anzufordern. In diesen Fällen gibt es ein BuildInfo-Objekt pro Ziel. So können Dateien von jedem Ziel angefordert und darauf ausgerichtet werden.

Proto-Format

BuildInfo kann bei Bedarf in einem Protobuf-Format serialisiert werden, um die Verwendung in verschiedenen Systemen zu erleichtern.