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 akhir yang lengkap

Jenis ini adalah kasus yang paling umum dalam hal berinteraksi dengan layanan eksternal yang menerima hasilnya. 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 sebagian

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

Jenis ini khusus untuk jenis penanganan yang diperlukan pada peristiwa, sehingga 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>