แต่ละโมดูลชุด (กำหนดโดย AndroidTest.xml
) สามารถมีวัตถุ module_controller
พิเศษที่สามารถเปลี่ยนพฤติกรรมบางอย่างของโมดูล:
ไม่ว่าจะรันโมดูลหรือไม่ตามเงื่อนไขบางประการ
โดยการใช้ BaseModuleController และเพิ่มลงใน AndroidTest.xml
ดังนี้:
<object type="module_controller" class="com.android.tradefed.testtype.suite.module.<NAME>" />
ตัวควบคุมโมดูลจะถูกใช้เพื่อกำหนดว่าโมดูลควรรันหรือไม่ โดยยึดตาม public abstract RunStrategy shouldRun(IInvocationContext context);
การดำเนินการ
ไม่ว่าจะรวบรวมบันทึกบางส่วนหรือไม่เกี่ยวกับความล้มเหลว
เมื่อใช้งานชุดเต็ม คุณสามารถขอการรวบรวมบันทึกบางอย่างเกี่ยวกับความล้มเหลวในระดับชุดได้ (ภาพหน้าจอ รายงานข้อบกพร่อง logcat) แต่สำหรับบางโมดูล บันทึกเฉพาะที่ร้องขออาจไม่มีค่าใดๆ และจะทำให้เสียเวลาในการรวบรวม ในสถานการณ์ดังกล่าว โมดูลสามารถระบุบันทึกที่พวกเขาสนใจได้อย่างชัดเจน:
<object type="module_controller"
class="com.android.tradefed.testtype.suite.module.TestFailureModuleController">
<option name="screenshot-on-failure" value="<true OR false>" />
<option name="bugreportz-on-failure" value="<true OR false>" />
<option name="logcat-on-failure" value="<true OR false>" />
</object>
หมายเหตุ: การใช้งานตัวควบคุมควรเป็นแบบทั่วไปหากเป็นไปได้เพื่อเพิ่มความสามารถในการนำกลับมาใช้ใหม่ได้สูงสุด และการข้ามโมดูลตามเงื่อนไขควรได้รับการตรวจสอบโดยเจ้าของโมดูลเพื่อรับการอนุมัติว่าการข้ามโมดูลเป็นพฤติกรรมที่เหมาะสมสำหรับพวกเขา