Les collecteurs de métriques gérés par l'hôte s'exécutent sur l'hôte et non sur l'appareil. Ils interagissent avec l'appareil du côté de l'hôte pour collecter les métriques qu'ils le ciblage.
Conception du collecteur de métriques
La classe de base que tous les collecteurs étendent est
BaseDeviceMetricCollector
,
qui permet de partager les mêmes fonctionnalités de base:
- Filtrage
- Désactivation...
- Collecte sur des scénarios de test par rapport aux exécutions de test
Les collecteurs suivent un rapporteur de résultats car ils se synchronisent avec l'exécution du test sur l'hôte. En d'autres termes, si les tests sont gérés par l'hôte, les collecteurs sont exécutés avant que le test ne passe à l'étape d'exécution suivante.
Par exemple, si le collecteur s'exécute sur testEnded
, il exécute
avant que l'exécution ne passe au test suivant avec testStart
.
Implémenter un collecteur de métriques basé sur l'hôte
Lorsque vous implémentez sur la classe de base BaseDeviceMetricCollector
, vous pouvez décider quand collecter vos métriques pendant le cycle de vie :
- Au début d'une exécution de test :
onTestRunStart
- Au début d'un scénario de test :
onTestStart
- À la fin d'un cas de test :
onTestEnd
- À la fin d'un test:
onTestRunEnd
Effectuer une collecte asynchrone
En plus des méthodes synchrones, TF fournit une classe de base à implémenter qui effectue une collecte asynchrone périodique, ScheduledDeviceMetricCollector
, qui fournit une méthode collect
à implémenter qui s'exécute périodiquement.
La période est personnalisable via des options.
Configuration XML
Le tag d'objet est metrics_collector
, par exemple:
<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
<option name="categories" value="freq"/>
</metrics_collector>
Recommandations
Consultez la liste existante des collecteurs. pour vous assurer que vous ne dupliquez pas le travail. Nous essayons de garantir une réutilisation maximale. Le fait que chaque collecteur effectue un seul type de collecte permet de combiner davantage et la mise en correspondance des collecteurs pendant l'exécution du test.