Сборщик метрик на основе хоста

Сборщики метрик, управляемые хостом, работают на хосте, а не на стороне устройства. Они взаимодействуют с устройством со стороны хоста для сбора целевых показателей.

Проектирование коллектора метрик

Базовый класс, который будут расширять все сборщики, — это BaseDeviceMetricCollector , который помогает обеспечить одни и те же общие базовые функции:

  • Фильтрация
  • Отключение
  • Сбор данных о тестовых примерах и тестовых запусках

Коллекторы следуют модели репортера результатов , поскольку они синхронизируются с выполнением теста на хосте. Другими словами, если тесты управляются хостом, сборщики будут выполняться до того, как тест перейдет к следующему шагу выполнения.

Например, если сборщик выполняется в testEnded , прежде чем выполнение перейдет к следующему тесту с testStart , будут выполнены сборщики.

Реализация управляемого хостом сборщика метрик

При реализации поверх базового класса BaseDeviceMetricCollector вы можете решить, когда вы хотите собирать свои метрики в течение жизненного цикла:

  • Когда начинается тестовый запуск: onTestRunStart
  • Когда начинается тестовый пример: onTestStart
  • Когда тестовый пример заканчивается: onTestEnd
  • Когда тестовый запуск заканчивается: onTestRunEnd

Выполнить асинхронный сбор

В дополнение к синхронным методам TF предоставляет для реализации базовый класс, выполняющий периодический асинхронный сбор, ScheduledDeviceMetricCollector , который предоставляет реализуемый метод collect , который будет запускаться периодически.

Период настраивается опциями.

XML-конфигурация

Тегом объекта будет metrics_collector , например:

<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
    <option name="categories" value="freq"/>
</metrics_collector>

Рекомендации

Сначала просмотрите существующий список сборщиков , чтобы убедиться, что вы не дублируете работу. Мы стараемся обеспечить максимальную возможность повторного использования, поэтому выполнение каждым сборщиком сбора одного типа позволяет лучше смешивать и сопоставлять различные сборщики во время выполнения теста.

,

Сборщики метрик, управляемые хостом, работают на хосте, а не на стороне устройства. Они взаимодействуют с устройством со стороны хоста для сбора целевых показателей.

Проектирование коллектора метрик

Базовый класс, который будут расширять все сборщики, — это BaseDeviceMetricCollector , который помогает обеспечить одни и те же общие базовые функции:

  • Фильтрация
  • Отключение
  • Сбор данных о тестовых примерах и тестовых запусках

Коллекторы следуют модели репортера результатов , поскольку они синхронизируются с выполнением теста на хосте. Другими словами, если тесты управляются хостом, сборщики будут выполняться до того, как тест перейдет к следующему шагу выполнения.

Например, если сборщик выполняется в testEnded , прежде чем выполнение перейдет к следующему тесту с testStart , будут выполнены сборщики.

Реализация управляемого хостом сборщика метрик

При реализации поверх базового класса BaseDeviceMetricCollector вы можете решить, когда вы хотите собирать свои метрики в течение жизненного цикла:

  • Когда начинается тестовый запуск: onTestRunStart
  • Когда начинается тестовый пример: onTestStart
  • Когда тестовый пример заканчивается: onTestEnd
  • Когда тестовый запуск заканчивается: onTestRunEnd

Выполнить асинхронный сбор

В дополнение к синхронным методам TF предоставляет для реализации базовый класс, выполняющий периодический асинхронный сбор, ScheduledDeviceMetricCollector , который предоставляет реализуемый метод collect , который будет запускаться периодически.

Период настраивается опциями.

XML-конфигурация

Тегом объекта будет metrics_collector , например:

<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
    <option name="categories" value="freq"/>
</metrics_collector>

Рекомендации

Сначала просмотрите существующий список сборщиков , чтобы убедиться, что вы не дублируете работу. Мы стараемся обеспечить максимальную возможность повторного использования, поэтому выполнение каждым сборщиком сбора одного типа позволяет лучше смешивать и сопоставлять различные сборщики во время выполнения теста.