BuildInfo no Tradefed

BuildInfo no TF é um objeto amplamente usado para transportar recursos para configuração e execução de testes. Tudo, desde imagens de dispositivos até APKs de teste, é armazenado ou vinculado em BuildInfo. Isso permite uma maneira unificada de acessar recursos de teste de um teste e desacoplar o teste da obtenção de recursos de teste.

Propriedades BuildInfo

As duas principais propriedades dos objetos BuildInfo são atributos e arquivos:

  • Atributos podem ser adicionados com #addBuildAttribute() e representam rótulos e informações de string para os builds. Os atributos podem ser usados para armazenar informações relacionadas ao build.
  • Arquivos podem ser adicionados com setFile(). O arquivo é rastreado e gerenciado por BuildInfo durante o ciclo de vida da invocação (por exemplo, processado corretamente durante o sharding). Isso evita a necessidade de o teste saber algo sobre o sistema de arquivos e, em vez disso, pode depender do objeto BuildInfo abstraído para receber os recursos.

BuildInfo em vários dispositivos

Quando uma configuração de teste é definida com vários dispositivos, existe um objeto BuildInfo por dispositivo. Isso permite solicitar e segmentar arquivos de um dispositivo para outro.

BuildInfo em várias versões

É possível exigir builds de vários destinos. Nesses casos, há um objeto BuildInfo por meta. Isso permite solicitar e segmentar arquivos de qualquer destino.

Formato proto

BuildInfo pode ser serializado em um formato protobuf para facilitar o uso em vários sistemas, se necessário.