Membuat pelapor hasil

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

Antarmuka inti

Untuk menentukan pelapor hasil baru di Tradefed, class harus menerapkan antarmuka ITestInvocationListener yang memungkinkan penerimaan dan penanganan berbagai tahap pemanggilan:

  • invocationStarted
  • invocationEnded
  • invocationFailed

Pelapor hasil juga menangani berbagai tahap setiap uji coba:

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

Mengingat semua peristiwa ini, ada dua jenis utama pelapor hasil, yaitu yang:

  • Hanya peduli untuk melaporkan hasil akhir yang selesai.
  • Mengambil tindakan pada hasil parsial.

Pelapor hasil yang melaporkan hasil akhir yang selesai

Jenis ini adalah kasus yang paling umum saat berinteraksi dengan layanan eksternal yang menerima hasilnya. Pelapor hanya menerima dan mengumpulkan hasil, lalu mengirimkannya semua pada invocationEnded ke endpoint hasil.

Sebaiknya pelapor tersebut memperluas CollectingTestListener, bukan antarmuka dasar, untuk menghindari penerapan ulang penyimpanan dan menyimpan hasil hingga invocationEnded.

Pelapor hasil yang melaporkan hasil parsial

Jenis ini biasanya digunakan untuk pendekatan streaming hasil, saat hasil diterima dan langsung dikirim ke tempat lain. Misalnya, pelapor yang mencatat hasil ke konsol akan memiliki jenis ini.

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