ตัวรวบรวมตัววัดที่ขับเคลื่อนด้วยโฮสต์ทำงานบนโฮสต์ ไม่ใช่ที่ฝั่งอุปกรณ์ พวกเขาโต้ตอบกับอุปกรณ์จากฝั่งโฮสต์เพื่อรวบรวมตัวชี้วัดที่พวกเขากำหนดเป้าหมาย
การออกแบบตัวสะสมเมตริก
คลาสพื้นฐานที่ตัวรวบรวมทั้งหมดจะขยายคือ BaseDeviceMetricCollector ซึ่งช่วยให้มีฟังก์ชันพื้นฐานที่ใช้ร่วมกันเหมือนกัน:
- การกรอง
- กำลังปิดการใช้งาน
- การรวบรวมในกรณีทดสอบเทียบกับการทดสอบการทำงาน
นักสะสมติดตามโมเดล ผู้รายงานผลลัพธ์ เนื่องจากจะซิงโครไนซ์กับการดำเนินการทดสอบบนโฮสต์ กล่าวอีกนัยหนึ่ง หากการทดสอบขับเคลื่อนโดยโฮสต์ ตัวรวบรวมจะถูกดำเนินการก่อนที่การทดสอบจะดำเนินต่อไปยังขั้นตอนการดำเนินการถัดไป
ตัวอย่างเช่น หากตัวรวบรวมดำเนินการบน testEnded
ก่อนที่การดำเนินการจะดำเนินการในการทดสอบถัดไปด้วย testStart
ตัวรวบรวมจะดำเนินการ
ใช้ตัวรวบรวมเมตริกที่ขับเคลื่อนด้วยโฮสต์
เมื่อใช้งานเพิ่มเติมจากคลาสพื้นฐาน BaseDeviceMetricCollector
คุณอาจตัดสินใจว่าเมื่อใดที่คุณต้องการรวบรวมตัววัดของคุณในระหว่างวงจรการใช้งาน:
- เมื่อการทดสอบรันเริ่มต้น:
onTestRunStart
- เมื่อกรณีทดสอบเริ่มต้น:
onTestStart
- เมื่อกรณีการทดสอบสิ้นสุดลง:
onTestEnd
- เมื่อการทดสอบการทำงานสิ้นสุดลง:
onTestRunEnd
ดำเนินการรวบรวมแบบอะซิงโครนัส
นอกเหนือจากวิธีการซิงโครนัสแล้ว TF ยังมีคลาสพื้นฐานสำหรับการใช้งานที่ดำเนินการรวบรวมแบบอะซิงโครนัสเป็นระยะ ScheduledDeviceMetricCollector ซึ่งจัดเตรียมวิธี collect
ที่จะนำไปใช้ซึ่งจะรันเป็นระยะ
ระยะเวลาสามารถปรับแต่งได้ตามตัวเลือก
การกำหนดค่า XML
แท็กอ็อบเจ็กต์จะเป็น metrics_collector
ตัวอย่างเช่น:
<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
<option name="categories" value="freq"/>
</metrics_collector>
ข้อแนะนำ
ขั้นแรก โปรดดู รายชื่อนักสะสมที่มีอยู่ เพื่อให้แน่ใจว่าคุณไม่ได้ทำซ้ำงาน เราพยายามทำให้มั่นใจว่าสามารถนำกลับมาใช้ใหม่ได้สูงสุด ดังนั้นการให้แต่ละตัวรวบรวมดำเนินการคอลเลกชันประเภทเดียวจะช่วยให้สามารถผสมและจับคู่ตัวรวบรวมที่แตกต่างกันได้มากขึ้นในระหว่างการทดสอบ
,ตัวรวบรวมตัววัดที่ขับเคลื่อนด้วยโฮสต์ทำงานบนโฮสต์ ไม่ใช่ที่ฝั่งอุปกรณ์ พวกเขาโต้ตอบกับอุปกรณ์จากฝั่งโฮสต์เพื่อรวบรวมตัวชี้วัดที่พวกเขากำหนดเป้าหมาย
การออกแบบตัวสะสมเมตริก
คลาสพื้นฐานที่ตัวรวบรวมทั้งหมดจะขยายคือ BaseDeviceMetricCollector ซึ่งช่วยให้มีฟังก์ชันพื้นฐานที่ใช้ร่วมกันเหมือนกัน:
- การกรอง
- กำลังปิดการใช้งาน
- การรวบรวมในกรณีทดสอบเทียบกับการทดสอบการทำงาน
นักสะสมติดตามโมเดล ผู้รายงานผลลัพธ์ เนื่องจากจะซิงโครไนซ์กับการดำเนินการทดสอบบนโฮสต์ กล่าวอีกนัยหนึ่ง หากการทดสอบขับเคลื่อนโดยโฮสต์ ตัวรวบรวมจะถูกดำเนินการก่อนที่การทดสอบจะดำเนินต่อไปยังขั้นตอนการดำเนินการถัดไป
ตัวอย่างเช่น หากตัวรวบรวมดำเนินการบน testEnded
ก่อนที่การดำเนินการจะดำเนินการในการทดสอบถัดไปด้วย testStart
ตัวรวบรวมจะดำเนินการ
ใช้ตัวรวบรวมเมตริกที่ขับเคลื่อนด้วยโฮสต์
เมื่อใช้งานเพิ่มเติมจากคลาสพื้นฐาน BaseDeviceMetricCollector
คุณอาจตัดสินใจว่าเมื่อใดที่คุณต้องการรวบรวมตัววัดของคุณในระหว่างวงจรการใช้งาน:
- เมื่อการทดสอบรันเริ่มต้น:
onTestRunStart
- เมื่อกรณีทดสอบเริ่มต้น:
onTestStart
- เมื่อกรณีการทดสอบสิ้นสุดลง:
onTestEnd
- เมื่อการทดสอบการทำงานสิ้นสุดลง:
onTestRunEnd
ดำเนินการรวบรวมแบบอะซิงโครนัส
นอกเหนือจากวิธีการซิงโครนัสแล้ว TF ยังมีคลาสพื้นฐานสำหรับการใช้งานที่ดำเนินการรวบรวมแบบอะซิงโครนัสเป็นระยะ ScheduledDeviceMetricCollector ซึ่งจัดเตรียมวิธี collect
ที่จะนำไปใช้ซึ่งจะรันเป็นระยะ
ระยะเวลาสามารถปรับแต่งได้ตามตัวเลือก
การกำหนดค่า XML
แท็กอ็อบเจ็กต์จะเป็น metrics_collector
ตัวอย่างเช่น:
<metrics_collector class="com.android.tradefed.device.metric.AtraceCollector">
<option name="categories" value="freq"/>
</metrics_collector>
ข้อแนะนำ
ขั้นแรก โปรดดู รายชื่อนักสะสมที่มีอยู่ เพื่อให้แน่ใจว่าคุณไม่ได้ทำซ้ำงาน เราพยายามทำให้มั่นใจว่าสามารถนำกลับมาใช้ใหม่ได้สูงสุด ดังนั้นการให้แต่ละตัวรวบรวมดำเนินการคอลเลกชันประเภทเดียวจะช่วยให้สามารถผสมและจับคู่ตัวรวบรวมที่แตกต่างกันได้มากขึ้นในระหว่างการทดสอบ