BuildInfo in Tradefed

BuildInfo in TF è un oggetto ampiamente utilizzato per trasportare risorse per la configurazione e l'esecuzione dei test. Tutto, dalle immagini dei dispositivi agli APK di test, è archiviato o collegato in BuildInfo. In questo modo è possibile accedere alle risorse di test da un test e separare il test dall'ottenimento delle risorse di test.

Proprietà BuildInfo

Le due proprietà principali degli oggetti BuildInfo sono gli attributi e i file:

  • Gli attributi possono essere aggiunti con #addBuildAttribute(); rappresentano etichette e informazioni sulle stringhe per le build. Gli attributi possono essere utilizzati per memorizzare informazioni relative alla build.
  • I file possono essere aggiunti con setFile(); il file viene monitorato e gestito da BuildInfo durante il ciclo di vita dell'invocazione (ad esempio, gestito correttamente durante lo sharding). In questo modo, il test non deve conoscere nulla del file system e può fare affidamento sull'oggetto BuildInfo astratto per ottenere le risorse.

BuildInfo in multi-devices

Quando una configurazione di test viene impostata con più dispositivi, esiste un oggetto BuildInfo per dispositivo. In questo modo è possibile richiedere e scegliere come target i file da un dispositivo all'altro.

BuildInfo in più build

È possibile richiedere build da più target. In questi casi, esiste un oggetto BuildInfo per ogni target. Ciò consente di richiedere e scegliere come target i file di qualsiasi target.

Formato proto

BuildInfo è serializzabile in un formato protobuf per semplificarne l'utilizzo nei vari sistemi, se necessario.