เช่นเดียวกับ ตัวจัดเตรียมเป้าหมาย ตัวจัดเตรียมหลายเป้าหมายช่วยให้สามารถตั้งค่าอุปกรณ์หลายเครื่องพร้อมกันได้ ตัวอย่างเช่น สิ่งนี้จะใช้เมื่อเชื่อมต่ออุปกรณ์สองเครื่องด้วย Bluetooth เพื่อทำการทดสอบ
อินเตอร์เฟซฐาน
อินเทอร์เฟซพื้นฐานคือ IMultiTargetPreparer
ซึ่งอนุญาตให้ดำเนินการวิธี setUp
ได้ เราขอแนะนำให้ใช้คลาสนามธรรมพื้นฐาน BaseMultiTargetPreparer
ซึ่งมีคุณลักษณะการปิดใช้งานในตัวเพื่อปิดใช้งานตัวจัดเตรียมได้อย่างง่ายดาย
ผู้จัดเตรียมหลายเป้าหมายยังจัดเตรียมวิธี tearDown
โดยตรงสำหรับการดำเนินการล้างข้อมูลใดๆ อีกด้วย
คำแนะนำ
เราขอแนะนำให้จำกัดผู้จัดเตรียมแต่ละรายให้มีฟังก์ชันหลักเพียงฟังก์ชันเดียว ช่วยให้ผู้จัดเตรียมสามารถนำกลับมาใช้ใหม่ได้ง่ายขึ้น
ตรวจสอบรายชื่อผู้จัดเตรียมที่มีอยู่ก่อนเพิ่มรายการใหม่ เพื่อหลีกเลี่ยงการทำงานซ้ำซ้อน ตัวจัดเตรียมมีอยู่ใน tools/tradefederation/core/src/com/android/tradefed/targetprep/multi/
ไม่มีการจำกัดจำนวนอุปกรณ์ที่ผู้จัดเตรียมหลายเป้าหมายสามารถตั้งค่าได้ อุปกรณ์ทั้งหมดมีอยู่ใน IInvocationContext
ของอินเทอร์เฟซที่จะนำไปใช้
การกำหนดค่า XML
แท็กอ็อบเจ็กต์คือ multi_target_preparer
ตัวอย่างเช่น:
<multi_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_target_preparer>
คำสั่งการดำเนินงาน
-
multi_target_preparer
ดำเนินการsetUp
หลังจากtarget_preparer
-
multi_target_preparer
ดำเนินการtearDown
ก่อน ตัวล้างเป้าหมาย
ซึ่งไม่ได้อนุญาตประสิทธิภาพการทำงานของขั้นตอนการตั้งค่าทั้งหมดเสมอไป ดังนั้นจึงเป็นไปได้ใน XML ที่จะกำหนดผู้จัดเตรียมหลายเป้าหมายเป็น multi_pre_target_preparer
และดำเนินการก่อนอินสแตนซ์ target_preparer
<multi_pre_target_preparer class="com.android.tradefed.targetprep.multi.HelloWorldMultiTargetPreparer">
</multi_pre_target_preparer>
ลำดับการดำเนินการโดยรวมมีดังนี้:
-
multi_pre_target_preparer setUp
-
target_preparer setUp
-
multi_target_preparer setUp
-
multi_target_preparer tearDown
-
target_preparer tearDown
-
multi_pre_target_preparer tearDown
ผู้จัดเตรียมหลายเป้าหมายสามารถประกาศเป็น multi_target_preparer
หรือ multi_pre_target_preparer
ขึ้นอยู่กับลำดับการตั้งค่าที่จำเป็น