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

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

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

หากต้องการกำหนดเครื่องมือรายงานผลลัพธ์ใหม่ใน 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>