Raccoglitore di metriche gestito dall'host

I raccoglitori di metriche guidate dall'host vengono eseguiti sull'host e non sul lato del dispositivo. Interagiscono con il dispositivo dal lato host per raccogliere le metriche a cui si rivolgono.

Progettazione del raccoglitore di metriche

La classe base che tutti i raccoglitori estenderanno è BaseDeviceMetricCollector , che aiuta a fornire le stesse funzionalità di base condivise:

  • Filtraggio
  • Disabilitazione
  • Raccolta sui casi di test rispetto alle esecuzioni di test

I raccoglitori seguono un modello di reporter dei risultati poiché si sincronizzano con l'esecuzione del test sull'host. In altre parole, se i test sono guidati dall'host, i raccoglitori verranno eseguiti prima che il test proceda alla fase di esecuzione successiva.

Ad esempio, se il raccoglitore viene eseguito su testEnded , prima che l'esecuzione proceda al test successivo con testStart , i raccoglitori verranno eseguiti.

Implementare un raccoglitore di parametri basato sull'host

Quando esegui l'implementazione sulla classe base BaseDeviceMetricCollector puoi decidere quando desideri raccogliere i tuoi parametri durante il ciclo di vita:

  • Quando inizia un'esecuzione di test: onTestRunStart
  • Quando inizia un test case: onTestStart
  • Quando un test case termina: onTestEnd
  • Al termine dell'esecuzione di un test: onTestRunEnd

Eseguire la raccolta asincrona

Oltre ai metodi sincroni, TF fornisce una classe base da implementare che esegue la raccolta asincrona periodica, ScheduledDeviceMetricCollector , che fornisce un metodo collect da implementare che verrà eseguito periodicamente.

Il periodo è personalizzabile tramite opzioni.

Configurazione XML

Il tag oggetto sarà metrics_collector , ad esempio:

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

Raccomandazioni

Per prima cosa dai un'occhiata all'elenco esistente dei collezionisti per assicurarti di non duplicare il lavoro. Cerchiamo di garantire la massima riutilizzabilità, quindi fare in modo che ogni raccoglitore esegua un singolo tipo di raccolta consente una maggiore combinazione e abbinamento di diversi raccoglitori durante l'esecuzione del test.

,

I raccoglitori di metriche guidate dall'host vengono eseguiti sull'host e non sul lato del dispositivo. Interagiscono con il dispositivo dal lato host per raccogliere le metriche a cui si rivolgono.

Progettazione del raccoglitore di metriche

La classe base che tutti i raccoglitori estenderanno è BaseDeviceMetricCollector , che aiuta a fornire le stesse funzionalità di base condivise:

  • Filtraggio
  • Disabilitazione
  • Raccolta sui casi di test rispetto alle esecuzioni di test

I raccoglitori seguono un modello di reporter dei risultati poiché si sincronizzano con l'esecuzione del test sull'host. In altre parole, se i test sono guidati dall'host, i raccoglitori verranno eseguiti prima che il test proceda alla fase di esecuzione successiva.

Ad esempio, se il raccoglitore viene eseguito su testEnded , prima che l'esecuzione proceda al test successivo con testStart , i raccoglitori verranno eseguiti.

Implementare un raccoglitore di parametri basato sull'host

Quando esegui l'implementazione sulla classe base BaseDeviceMetricCollector puoi decidere quando desideri raccogliere i tuoi parametri durante il ciclo di vita:

  • Quando inizia un'esecuzione di test: onTestRunStart
  • Quando inizia un test case: onTestStart
  • Quando un test case termina: onTestEnd
  • Al termine dell'esecuzione di un test: onTestRunEnd

Eseguire la raccolta asincrona

Oltre ai metodi sincroni, TF fornisce una classe base da implementare che esegue la raccolta asincrona periodica, ScheduledDeviceMetricCollector , che fornisce un metodo collect da implementare che verrà eseguito periodicamente.

Il periodo è personalizzabile tramite opzioni.

Configurazione XML

Il tag oggetto sarà metrics_collector , ad esempio:

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

Raccomandazioni

Per prima cosa dai un'occhiata all'elenco esistente dei collezionisti per assicurarti di non duplicare il lavoro. Cerchiamo di garantire la massima riutilizzabilità, quindi fare in modo che ogni raccoglitore esegua un singolo tipo di raccolta consente una maggiore combinazione e abbinamento di diversi raccoglitori durante l'esecuzione del test.