BuildInfo в Tradefed

BuildInfo в TF – это широко используемый объект для переноса ресурсов для настройки и запуска тестов. В BuildInfo хранятся или связаны все данные, от изображений устройств до тестовых APK-файлов. Это позволяет унифицировать доступ к ресурсам тестирования из теста и отделить тест от получения ресурсов тестирования.

Свойства BuildInfo

Два основных свойства объектов BuildInfo – это атрибуты и файлы.

  • Атрибуты можно добавлять с помощью #addBuildAttribute(). Они представляют собой ярлыки и строковую информацию для сборок. Атрибуты можно использовать для хранения информации, связанной со сборкой.
  • Файлы можно добавить с помощью setFile(). Файл отслеживается и управляется BuildInfo в течение всего жизненного цикла вызова (например, правильно обрабатывается при сегментировании). Благодаря этому тесту не нужно ничего знать о файловой системе, поскольку он может получать ресурсы с помощью абстрактного объекта BuildInfo.

Информация о сборке на нескольких устройствах

Если тестовая конфигурация настроена для нескольких устройств, для каждого из них существует один объект BuildInfo. Это позволяет запрашивать и передавать файлы с одного устройства на другое.

BuildInfo в нескольких сборках

Можно указать несколько целей сборки. В таких случаях на каждую цель приходится один объект BuildInfo. Это позволяет запрашивать файлы из любой цели и настраивать на них таргетинг.

Формат Proto

BuildInfo можно сериализовать в формате protobuf, чтобы при необходимости было проще использовать его в разных системах.