ตัวรวบรวมเมตริกที่ขับเคลื่อนโดยโฮสต์

ตัวรวบรวมตัววัดที่ขับเคลื่อนด้วยโฮสต์ทำงานบนโฮสต์ ไม่ใช่ที่ฝั่งอุปกรณ์ พวกเขาโต้ตอบกับอุปกรณ์จากฝั่งโฮสต์เพื่อรวบรวมตัวชี้วัดที่พวกเขากำหนดเป้าหมาย

การออกแบบตัวสะสมเมตริก

คลาสพื้นฐานที่ตัวรวบรวมทั้งหมดจะขยายคือ 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>

ข้อแนะนำ

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