Kolektor metrik yang didorong host

Pengumpul metrik berbasis host berjalan di host, bukan di sisi perangkat. Mereka berinteraksi dengan perangkat dari sisi {i>host<i} untuk mengumpulkan metrik yang penargetan.

Desain pengumpulan metrik

Class dasar yang diperluas oleh semua kolektor adalah BaseDeviceMetricCollector, yang membantu menyediakan fungsi dasar bersama yang sama:

  • Pemfilteran
  • Menonaktifkan
  • Pengumpulan pada kasus pengujian versus pengujian yang dijalankan

Pengumpul mengikuti model reporter hasil karena disinkronkan dengan eksekusi pengujian di host. Di jika pengujian dijalankan oleh host, kolektor dijalankan sebelum tes melanjutkan ke langkah eksekusi berikutnya.

Misalnya, jika kolektor dieksekusi pada testEnded, kolektor akan mengeksekusi sebelum eksekusi dilanjutkan ke pengujian berikutnya dengan testStart.

Menerapkan kolektor metrik berbasis host

Saat menerapkan di atas class dasar BaseDeviceMetricCollector, Anda dapat memutuskan kapan akan mengumpulkan metrik selama siklus proses:

  • Saat pengujian dimulai: onTestRunStart
  • Saat kasus pengujian dimulai: onTestStart
  • Saat kasus pengujian berakhir: onTestEnd
  • Saat operasi pengujian berakhir: onTestRunEnd

Melakukan pengumpulan asinkron

Selain metode sinkron, TF menyediakan kelas dasar untuk mengimplementasikan yang menjalankan pengumpulan asinkron berkala, ScheduledDeviceMetricCollector, yang menyediakan metode collect untuk diimplementasikan yang menjalankan secara berkala.

Periode ini dapat disesuaikan menurut opsi.

Konfigurasi XML

Tag objek adalah metrics_collector, misalnya:

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

Rekomendasi

Lihat daftar kolektor yang ada untuk memastikan Anda tidak menduplikasi pekerjaan. Kami mencoba untuk memastikan penggunaan kembali maksimum, jadi meminta setiap kolektor melakukan satu jenis koleksi memungkinkan lebih banyak pencampuran dan mencocokkan berbagai kolektor selama pelaksanaan uji.