BuildInfo in Tradefed

BuildInfo in TF è un oggetto ampiamente utilizzato per trasportare le risorse per la configurazione e l'esecuzione dei test. Tutto, dalle immagini dei dispositivi agli APK di test, viene archiviato o collegato in BuildInfo. In questo modo, puoi accedere in modo unificato alle risorse di test da un test e disaccoppiare 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 le etichette e le informazioni sulle stringhe per le build. Gli attributi possono essere utilizzati per memorizzare informazioni relative alla compilazione.
  • 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 più dispositivi

Quando una configurazione di test è configurata 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 target. In questo modo è possibile richiedere e scegliere come target i file da qualsiasi target.

Formato proto

BuildInfo è serializzabile in un formato protobuf per semplificarne l'utilizzo su più sistemi, se necessario.