একাধিক টার্গেট প্রস্তুতকারী

এক টার্গেট প্রিপেয়ারারের মতো, এক মাল্টি-টার্গেট প্রিপেয়ারার একসাথে একাধিক ডিভাইস সেট-আপ করার অনুমতি দেয়। যেমন, টেস্ট করার জন্য ব্লুটুথের মাধ্যমে দুটি ডিভাইস কানেক্ট করার সময় এটি ব্যবহার করা হবে।

বেস ইন্টারফেস

বেস ইন্টারফেস হল 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>

অপারেশন অর্ডার

  1. multi_target_preparer, target_preparer পরে setUp এক্সিকিউট করে।
  2. 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>

অপারেশনের সামগ্রিক ক্রম নিচে দেওয়া হল:

  1. multi_pre_target_preparer setUp
  2. target_preparer setUp
  3. multi_target_preparer setUp
  4. multi_target_preparer tearDown
  5. target_preparer tearDown
  6. multi_pre_target_preparer tearDown

কী ধরনের সেট-আপের প্রয়োজন তার উপর নির্ভর করে যেকোনও মাল্টি-টার্গেট প্রিপেয়ারারকে multi_target_preparer বা multi_pre_target_preparer হিসেবে ঘোষণা করা যেতে পারে।