Recopilador de métricas basado en el host

Los recopiladores de métricas controlados por el host se ejecutan en el host y no en el del dispositivo. Ellas interactuar con el dispositivo desde el lado del host para recopilar las métricas que la segmentación de clientes.

Diseño de recopilador de métricas

La clase base que extenderán todos los recopiladores es BaseDeviceMetricCollector y que ayuda a proporcionar las mismas funcionalidades básicas compartidas:

  • Filtros
  • Inhabilitando
  • Comparación entre la recopilación de casos de prueba y las ejecuciones de prueba

Los recopiladores siguen a un generador de resultados ya que se sincronizan con la ejecución de prueba en el host. En otro palabras, si las pruebas son controladas por host, los recopiladores se ejecutarán antes de la prueba avanza al siguiente paso de ejecución.

Por ejemplo, si el recopilador se ejecuta en testEnded, antes de la ejecución Pasa a la siguiente prueba con testStart que ejecutarán los recopiladores.

Implementa un recopilador de métricas basado en el host

Cuando implementas sobre la clase base BaseDeviceMetricCollector, puede decidir cuándo te gustaría recopilar tus métricas durante el ciclo de vida:

  • Cuando comienza una ejecución de prueba: onTestRunStart
  • Cuando comienza un caso de prueba: onTestStart
  • Cuando finaliza un caso de prueba: onTestEnd
  • Cuando finaliza una ejecución de prueba, ocurre lo siguiente: onTestRunEnd

Realiza una recopilación asíncrona

Además de los métodos síncronos, TF proporciona una clase base para implementar que realiza recopilaciones asíncronas periódicas, ScheduledDeviceMetricCollector y que proporciona un método collect que se ejecutará y que se implementará de forma periódica.

El período se puede personalizar con opciones.

Configuración de XML

La etiqueta del objeto será metrics_collector, por ejemplo:

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

Recomendaciones

Primero, consulta la lista existente de recopiladores. para asegurarte de no duplicar el trabajo. Tratamos de garantizar la máxima reutilización, por lo que hacer que cada recopilador realice un solo tipo de recopilación permite una mayor mezcla y la coincidencia de diferentes recopiladores durante la ejecución de prueba.