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 mengimplementasikan
antarmuka
ITestInvocationListener
yang memungkinkan penerimaan dan penanganan berbagai tahap
pemanggilan:
invocationStarted
invocationEnded
invocationFailed
Pelapor hasil juga menangani berbagai tahap setiap pengujian yang dijalankan:
testRunStarted
testStarted
testFailed
atautestIgnored
testEnded
testRunFailed
testRunEnded
Dengan semua peristiwa ini, ada dua jenis utama pelapor hasil, yaitu:
- Hanya peduli dengan pelaporan hasil akhir yang lengkap.
- Mengambil tindakan berdasarkan hasil sebagian.
Pelapor hasil yang melaporkan hasil akhir yang lengkap
Jenis ini adalah kasus yang paling umum dalam hal berinteraksi dengan layanan
eksternal yang menerima hasilnya. Pelapor hanya menerima dan mengumpulkan
hasil, lalu mengirim semuanya di invocationEnded
ke endpoint hasil.
Sebaiknya pelapor tersebut memperluas CollectingTestListener
, bukan
antarmuka dasar, untuk menghindari penerapan ulang penyimpanan dan penyimpanan
hasil hingga invocationEnded
.
Pelapor hasil yang melaporkan hasil sebagian
Jenis ini biasanya digunakan untuk pendekatan streaming hasil, saat hasil diterima dan langsung 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 menerapkan 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>