Сборщики метрик, управляемые хостом, работают на стороне хоста, а не на стороне устройства. Они взаимодействуют с устройством со стороны хоста для сбора целевых метрик.
Конструкция сборщика метрик
Базовым классом, от которого наследуются все сборщики метрик, является BaseDeviceMetricCollector , который обеспечивает одинаковые основные функции:
- Фильтрация
- Отключение
- Сбор данных по тестовым примерам и результатам выполнения тестовых заданий.
Сборщики данных следуют модели формирования отчетов о результатах, поскольку они синхронизируются с выполнением теста на хосте. Другими словами, если тесты управляются хостом, сборщики данных выполняются до того, как тест перейдет к следующему этапу выполнения.
Например, если сборщик мусора выполняется при testEnded , то сборщики мусора выполняются до того, как выполнение перейдет к следующему тесту с testStart .
Реализовать сборщик метрик, управляемый хостом.
При реализации поверх базового класса BaseDeviceMetricCollector вы можете сами решать, когда собирать метрики в течение жизненного цикла:
- Когда начинается выполнение теста:
onTestRunStart - Когда начинается тестовый случай:
onTestStart - Когда завершается тестовый случай:
onTestEnd - Когда завершается выполнение теста:
onTestRunEnd
Выполнить асинхронный сбор данных.
В дополнение к синхронным методам, TensorFlow предоставляет базовый класс для реализации периодического асинхронного сбора данных, ScheduledDeviceMetricCollector , который предоставляет метод collect , запускаемый периодически.
Период можно настроить с помощью дополнительных параметров.
XML-конфигурация
Тег объекта — metrics_collector , например:
<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
<option name="categories" value="freq"/>
</metrics_collector>
Рекомендации
Просмотрите существующий список сборщиков мусора , чтобы убедиться в отсутствии дублирования работы. Мы стремимся обеспечить максимальное повторное использование, поэтому использование каждым сборщиком мусора одного типа позволяет более гибко комбинировать различные сборщики мусора во время выполнения тестов.