Pengumpul metrik sisi perangkat

Saat menjalankan pengujian sisi perangkat (misalnya, instrumentasi, pengujian UI Automator), pengumpul sisi host mungkin tidak ideal karena sulit untuk menyinkronkan pengumpulan metrik dengan pengujian yang berjalan di perangkat. Misalnya, screenshot yang diambil secara asinkron kemungkinan akan melewatkan layar yang diinginkan dan tidak berguna.

Untuk memenuhi kasus penggunaan ini, versi sisi perangkat dari pengumpul kami ada dan dapat digunakan dalam instrumentasi AndroidJUnitRunner apa pun. BaseMetricListener dapat diterapkan untuk melaporkan metrik yang dikumpulkan secara otomatis dengan cara yang sepenuhnya kompatibel dengan pipeline pelaporan Tradefed.

Library ini tidak terkait dengan Tradefed itu sendiri dan dapat digunakan tanpa Tradefed.

Jika Anda menggunakan runner AndroidJUnitTest dari Tradefed, Anda dapat menentukan opsi command line berikut agar pengumpul berjalan dengan pengujian Anda:

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

Implementasi

Saat menerapkan di atas class dasar BaseMetricListener, Anda dapat memilih kapan Anda ingin mengumpulkan metrik selama siklus proses instrumentasi:

  • Saat uji coba dimulai: onTestRunStart
  • Saat kasus pengujian dimulai: onTestStart
  • Saat kasus pengujian berakhir: onTestEnd
  • Jika kasus pengujian gagal: onTestFail
  • Saat uji coba berakhir: onTestRunEnd

Interaksi

Pengumpulan metrik di sisi perangkat dilakukan secara serentak dengan eksekusi instrumentasi itu sendiri, dan metrik dikirim kembali ke hasil instrumentasi dan diuraikan oleh Tradefed untuk dilaporkan sebagai bagian dari pemanggilan.