Geräteseitige Metrikerfassung

Beim Ausführen von geräteseitigen Tests (Instrumentierungen, UI-Automator-Tests usw.) sind hostseitige Collectors möglicherweise nicht ideal, da es schwierig ist, die Metrikerfassung mit einem auf einem Gerät ausgeführten Test zu synchronisieren. Beispielsweise wird ein asynchron aufgenommener Screenshot höchstwahrscheinlich den gewünschten Bildschirm verfehlen und unbrauchbar sein.

Um diese Anwendungsfälle zu erfüllen, gibt es eine geräteseitige Version unserer Kollektoren, die in jeder „AndroidJUnitRunner“-Instrumentierung verwendet werden kann. BaseMetricListener kann implementiert werden, um automatisch erfasste Metriken zu melden, die vollständig kompatibel mit der Tradefed-Reporting-Pipeline sind.

Diese Bibliothek ist von Tradefed selbst entkoppelt und kann ohne Tradefed verwendet werden.

Wenn Sie den Runner „ AndroidJUnitTest “ von Tradefed verwenden, können Sie einfach die folgende Befehlszeilenoption angeben, damit Ihr Collector mit Ihren Tests ausgeführt wird:

  --device-listeners android.device.collectors.ScreenshotListener
  LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib

Implementierung

Wenn Sie zusätzlich zur Basisklasse BaseMetricListener implementieren, können Sie wählen, wann Sie Ihre Metriken während des Lebenszyklus der Instrumentierung sammeln möchten:

  • Wenn ein Testlauf startet: onTestRunStart
  • Wenn ein Testfall beginnt: onTestStart
  • Wenn ein Testfall endet: onTestEnd
  • Wenn ein Testfall fehlschlägt: onTestFail
  • Wenn ein Testlauf endet: onTestRunEnd

Interaktion

Die Erfassung von Metriken auf der Geräteseite erfolgt synchron zur Instrumentierungsausführung selbst, und Metriken werden an die Instrumentierungsergebnisse zurückgegeben und von Tradefed analysiert, um als Teil des Aufrufs gemeldet zu werden.

,

Beim Ausführen von geräteseitigen Tests (Instrumentierungen, UI-Automator-Tests usw.) sind hostseitige Collectors möglicherweise nicht ideal, da es schwierig ist, die Metrikerfassung mit einem auf einem Gerät ausgeführten Test zu synchronisieren. Beispielsweise wird ein asynchron aufgenommener Screenshot höchstwahrscheinlich den gewünschten Bildschirm verfehlen und unbrauchbar sein.

Um diese Anwendungsfälle zu erfüllen, gibt es eine geräteseitige Version unserer Kollektoren, die in jeder „AndroidJUnitRunner“-Instrumentierung verwendet werden kann. BaseMetricListener kann implementiert werden, um automatisch erfasste Metriken zu melden, die vollständig kompatibel mit der Tradefed-Reporting-Pipeline sind.

Diese Bibliothek ist von Tradefed selbst entkoppelt und kann ohne Tradefed verwendet werden.

Wenn Sie den Runner „ AndroidJUnitTest “ von Tradefed verwenden, können Sie einfach die folgende Befehlszeilenoption angeben, damit Ihr Collector mit Ihren Tests ausgeführt wird:

  --device-listeners android.device.collectors.ScreenshotListener
  LOCAL_STATIC_JAVA_LIBRARIES += collector-device-lib

Implementierung

Wenn Sie zusätzlich zur Basisklasse BaseMetricListener implementieren, können Sie wählen, wann Sie Ihre Metriken während des Lebenszyklus der Instrumentierung sammeln möchten:

  • Wenn ein Testlauf startet: onTestRunStart
  • Wenn ein Testfall beginnt: onTestStart
  • Wenn ein Testfall endet: onTestEnd
  • Wenn ein Testfall fehlschlägt: onTestFail
  • Wenn ein Testlauf endet: onTestRunEnd

Interaktion

Die Erfassung von Metriken auf der Geräteseite erfolgt synchron zur Instrumentierungsausführung selbst, und Metriken werden an die Instrumentierungsergebnisse zurückgegeben und von Tradefed analysiert, um als Teil des Aufrufs gemeldet zu werden.