Hostgesteuerter Metriksammler

Hostgesteuerte Metriksammler werden auf dem Host und nicht auf der Geräteseite ausgeführt. Sie interagieren von der Hostseite aus mit dem Gerät, um die Metriken zu erfassen, auf die sie abzielen.

Design des Metriksammlers

Die Basisklasse, die alle Kollektoren erweitern, ist BaseDeviceMetricCollector , die dabei hilft, die gleichen gemeinsamen Grundfunktionen bereitzustellen:

  • Filtern
  • Deaktivieren
  • Sammlung zu Testfällen vs. Testläufen

Collectors folgen einem Ergebnis-Reporter- Modell, da sie sich mit der Testausführung auf dem Host synchronisieren. Mit anderen Worten: Wenn Tests hostgesteuert sind, werden Collectors ausgeführt, bevor der Test mit dem nächsten Ausführungsschritt fortfährt.

Wenn der Collector beispielsweise bei testEnded ausgeführt wird, werden die Collector(s) ausgeführt, bevor die Ausführung mit testStart zum nächsten Test übergeht.

Implementieren Sie einen hostgesteuerten Metriksammler

Bei der Implementierung zusätzlich zur Basisklasse BaseDeviceMetricCollector können Sie entscheiden, wann Sie Ihre Metriken während des Lebenszyklus erfassen möchten:

  • Wenn ein Testlauf startet: onTestRunStart
  • Wenn ein Testfall beginnt: onTestStart
  • Wenn ein Testfall endet: onTestEnd
  • Wenn ein Testlauf endet: onTestRunEnd

Führen Sie eine asynchrone Sammlung durch

Zusätzlich zu den synchronen Methoden stellt TF eine zu implementierende Basisklasse bereit, die eine regelmäßige asynchrone Erfassung durchführt, ScheduledDeviceMetricCollector , die eine zu implementierende collect bereitstellt, die regelmäßig ausgeführt wird.

Der Zeitraum ist durch Optionen anpassbar.

XML-Konfiguration

Das Objekt-Tag lautet metrics_collector , zum Beispiel:

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

Empfehlungen

Schauen Sie sich zunächst die vorhandene Liste der Sammler an, um sicherzustellen, dass Sie keine Doppelarbeit leisten. Wir versuchen, maximale Wiederverwendbarkeit zu gewährleisten. Wenn also jeder Kollektor einen einzigen Sammlungstyp durchführt, können verschiedene Kollektoren während der Testausführung besser gemischt und angepasst werden.

,

Hostgesteuerte Metriksammler werden auf dem Host und nicht auf der Geräteseite ausgeführt. Sie interagieren von der Hostseite aus mit dem Gerät, um die Metriken zu erfassen, auf die sie abzielen.

Design des Metriksammlers

Die Basisklasse, die alle Kollektoren erweitern, ist BaseDeviceMetricCollector , die dabei hilft, die gleichen gemeinsamen Grundfunktionen bereitzustellen:

  • Filtern
  • Deaktivieren
  • Sammlung zu Testfällen vs. Testläufen

Collectors folgen einem Ergebnis-Reporter- Modell, da sie sich mit der Testausführung auf dem Host synchronisieren. Mit anderen Worten: Wenn Tests hostgesteuert sind, werden Collectors ausgeführt, bevor der Test mit dem nächsten Ausführungsschritt fortfährt.

Wenn der Collector beispielsweise bei testEnded ausgeführt wird, werden die Collector(s) ausgeführt, bevor die Ausführung mit testStart zum nächsten Test übergeht.

Implementieren Sie einen hostgesteuerten Metriksammler

Bei der Implementierung zusätzlich zur Basisklasse BaseDeviceMetricCollector können Sie entscheiden, wann Sie Ihre Metriken während des Lebenszyklus erfassen möchten:

  • Wenn ein Testlauf startet: onTestRunStart
  • Wenn ein Testfall beginnt: onTestStart
  • Wenn ein Testfall endet: onTestEnd
  • Wenn ein Testlauf endet: onTestRunEnd

Führen Sie eine asynchrone Sammlung durch

Zusätzlich zu den synchronen Methoden stellt TF eine zu implementierende Basisklasse bereit, die eine regelmäßige asynchrone Erfassung durchführt, ScheduledDeviceMetricCollector , die eine zu implementierende collect bereitstellt, die regelmäßig ausgeführt wird.

Der Zeitraum ist durch Optionen anpassbar.

XML-Konfiguration

Das Objekt-Tag lautet metrics_collector , zum Beispiel:

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

Empfehlungen

Schauen Sie sich zunächst die vorhandene Liste der Sammler an, um sicherzustellen, dass Sie keine Doppelarbeit leisten. Wir versuchen, maximale Wiederverwendbarkeit zu gewährleisten. Wenn also jeder Kollektor einen einzigen Sammlungstyp durchführt, können verschiedene Kollektoren während der Testausführung besser gemischt und angepasst werden.