Membuat pelapor hasil

Halaman ini menjelaskan dasar-dasar cara menerapkan pelapor hasil baru dan melakukan konfigurasi untuk pengujian.

Antarmuka inti

Untuk menentukan pelapor hasil baru di Tradefed, class harus mengimplementasikan tindakan ITestInvocationListener antarmuka yang memungkinkan untuk menerima dan menangani berbagai tahap dari pemanggilan:

  • invocationStarted
  • invocationEnded
  • invocationFailed

Reporter hasil juga menangani berbagai tahap dari setiap pengujian:

  • testRunStarted
  • testStarted
  • testFailed atau testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

Mengingat semua peristiwa tersebut, ada dua jenis reporter hasil utama, yaitu yang:

  • Hanya perlu melaporkan hasil lengkap akhir.
  • Ambil tindakan pada hasil parsial.

Pelapor hasil yang melaporkan hasil lengkap akhir

Jenis ini adalah kasus yang paling umum mengenai interaksi dengan yang menerima hasil tersebut. Reporter hanya menerima dan mengumpulkan hasilnya, lalu mengirimkannya semua di invocationEnded ke endpoint hasil.

Sebaiknya reporter tersebut memperluas CollectingTestListener antarmuka dasar untuk menghindari implementasi ulang, penyimpanan, dan hasil hingga invocationEnded.

Pelapor hasil yang melaporkan hasil parsial

Jenis ini biasanya digunakan untuk pendekatan streaming hasil, jika hasil diterima dan segera dikirim ke beberapa tempat lain. Misalnya, seorang reporter yang mencatat hasil ke konsol ke konsol adalah jenis ini.

Jenis ini khusus untuk jenis penanganan yang diperlukan pada peristiwa, jadi mengimplementasikan antarmuka dasar biasanya merupakan cara yang direkomendasikan.

Konfigurasi XML

Tag objek adalah result_reporter. Contoh:

<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
    <option name="suppress-passed-tests" value="true"/>
</result_reporter>