প্রতিটি স্যুট মডিউল ( 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);
বাস্তবায়ন
কিছু লগ সংগ্রহ বা ব্যর্থতার উপর না
একটি সম্পূর্ণ স্যুট চালানোর সময়, স্যুট স্তরে কিছু লগ অন ব্যর্থতার (স্ক্রিনশট, বাগ রিপোর্ট, লগক্যাট) সংগ্রহের অনুরোধ করা সম্ভব। কিন্তু কিছু মডিউলের জন্য, অনুরোধ করা একটি নির্দিষ্ট লগের কোনো মূল্য নাও থাকতে পারে এবং এটি সংগ্রহ করতে সময় নষ্ট করবে। সেই পরিস্থিতিতে, একটি মডিউল স্পষ্টভাবে উল্লেখ করতে পারে যে তারা কোন লগগুলিতে আগ্রহী:
<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>
দ্রষ্টব্য: পুনঃব্যবহারযোগ্যতা সর্বাধিক করার জন্য সম্ভব হলে নিয়ন্ত্রকগুলির বাস্তবায়ন জেনেরিক হওয়া উচিত। এবং একটি মডিউল এড়িয়ে যাওয়া তার অবস্থার উপর ভিত্তি করে মডিউল মালিকের দ্বারা পর্যালোচনা করা উচিত যাতে একটি মডিউল এড়িয়ে যাওয়া তাদের জন্য সঠিক আচরণ।