หน้านี้อธิบายพื้นฐานของวิธีใช้งานเครื่องมือรายงานผลลัพธ์ใหม่และกำหนดค่าสำหรับการทดสอบ
อินเทอร์เฟซหลัก
เพื่อกำหนดผู้รายงานผลลัพธ์ใหม่ใน Tradefed คลาสต้องใช้อินเทอร์เฟซ ITestInvocationListener
ที่อนุญาตให้รับและจัดการขั้นตอนต่างๆ ของการเรียกใช้:
-
invocationStarted
-
invocationEnded
-
invocationFailed
ผู้รายงานผลยังจัดการขั้นตอนต่างๆ ของการทดสอบแต่ละครั้งด้วย:
-
testRunStarted
-
testStarted
-
testFailed
หรือtestIgnored
-
testEnded
-
testRunFailed
-
testRunEnded
จากเหตุการณ์ทั้งหมดนี้ มีผู้รายงานผลการแข่งขันหลักๆ สองประเภท ได้แก่:
- ดูแลเฉพาะการรายงานผลลัพธ์ที่สมบูรณ์ขั้นสุดท้ายเท่านั้น
- ดำเนินการกับผลลัพธ์บางส่วน
ผู้รายงานผลลัพธ์ที่รายงานผลลัพธ์ที่สมบูรณ์ขั้นสุดท้าย
ประเภทนี้เป็นกรณีที่พบบ่อยที่สุดเมื่อต้องโต้ตอบกับบริการภายนอกที่ได้รับผลลัพธ์ ผู้รายงานเพียงแค่รับและสะสมผลลัพธ์ จากนั้นส่งทั้งหมดเมื่อ invocationEnded
ไปยังจุดสิ้นสุดผลลัพธ์
เราขอแนะนำให้ผู้รายงานเหล่านั้นขยาย CollectingTestListener
แทนอินเทอร์เฟซพื้นฐานเพื่อหลีกเลี่ยงการนำการบันทึกและจัดเก็บผลลัพธ์ไปใช้ใหม่จนกระทั่ง invocationEnded
ผู้รายงานผลลัพธ์ที่รายงานผลลัพธ์บางส่วน
โดยปกติประเภทนี้จะใช้สำหรับการสตรีมผลลัพธ์ เมื่อได้รับผลลัพธ์และพุชไปยังที่อื่นทันที ตัวอย่างเช่น ผู้รายงานที่บันทึกผลลัพธ์ลงในคอนโซลจะเป็นประเภทนี้
ประเภทนี้เฉพาะเจาะจงกับประเภทของการจัดการที่จำเป็นในเหตุการณ์ ดังนั้นการนำอินเทอร์เฟซพื้นฐานไปใช้มักจะเป็นวิธีที่แนะนำ
การกำหนดค่า XML
แท็กวัตถุคือ result_reporter
ตัวอย่างเช่น:
<result_reporter class="com.android.tradefed.result.ConsoleResultReporter">
<option name="suppress-passed-tests" value="true"/>
</result_reporter>