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.