สร้างเครื่องมือรายงานผล

หน้านี้อธิบายพื้นฐานเกี่ยวกับวิธีใช้เครื่องมือรายงานผลลัพธ์ใหม่และกำหนดค่าสำหรับการทดสอบ

อินเทอร์เฟซหลัก

หากต้องการกำหนดเครื่องมือรายงานผลลัพธ์ใหม่ใน Tradefed ชั้นเรียนต้องใช้งานITestInvocationListener อินเทอร์เฟซที่อนุญาตให้รับและจัดการการเรียกใช้ในแต่ละระยะ ดังนี้

  • invocationStarted
  • invocationEnded
  • invocationFailed

นอกจากนี้ เครื่องมือรายงานผลลัพธ์ยังจัดการกับระยะต่างๆ ของการทดสอบแต่ละครั้งด้วย

  • testRunStarted
  • testStarted
  • testFailed หรือ testIgnored
  • testEnded
  • testRunFailed
  • testRunEnded

เหตุการณ์ทั้งหมดเหล่านี้ส่งผลให้ผู้รายงานผลลัพธ์มี 2 ประเภทหลักๆ ดังนี้

  • สนใจเฉพาะการรายงานผลลัพธ์สุดท้ายที่สมบูรณ์
  • ดำเนินการกับผลการค้นหาบางส่วน

ผู้รายงานผลลัพธ์ที่รายงานผลลัพธ์สุดท้ายที่สมบูรณ์

ประเภทนี้เป็นกรณีที่พบบ่อยที่สุดเมื่อต้องโต้ตอบกับบริการภายนอกที่รับผลลัพธ์ ผู้รายงานเพียงแค่รับและรวบรวมผลลัพธ์ แล้วส่งทั้งหมดใน invocationEnded ไปยังปลายทางของผลลัพธ์

เราขอแนะนำให้ผู้รายงานเหล่านั้นขยาย CollectingTestListener แทนอินเทอร์เฟซพื้นฐานเพื่อหลีกเลี่ยงการติดตั้งใช้งานการบันทึกและจัดเก็บผลลัพธ์อีกครั้งจนถึง invocationEnded

ผู้รายงานผลลัพธ์ที่รายงานผลลัพธ์บางส่วน

ประเภทนี้มักใช้กับวิธีการสตรีมผลลัพธ์ เมื่อได้รับผลลัพธ์และส่งไปยังที่อื่นทันที เช่น ผู้รายงานที่บันทึกผลลัพธ์ลงในคอนโซลจะจัดอยู่ในประเภทนี้

ประเภทนี้ใช้กับประเภทการจัดการที่จำเป็นสำหรับเหตุการณ์ ดังนั้นโดยทั่วไปแล้วเราขอแนะนำให้ใช้อินเทอร์เฟซพื้นฐาน

การกําหนดค่า XML

แท็กออบเจ็กต์คือ result_reporter เช่น

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