टारगेट प्रिपेयरर, टेस्ट लेवल में टेस्ट से पहले शुरू किए जाते हैं. इससे किसी भी डिवाइस को टेस्ट के लिए सेट अप किया जा सकता है, ताकि टेस्ट आसानी से किए जा सकें.
बेस इंटरफ़ेस
बेस इंटरफ़ेस ITargetPreparer
है. इससे setUp
तरीके को लागू किया जा सकता है. हमारा सुझाव है कि आप हमारी बुनियादी ऐब्स्ट्रैक्ट क्लास BaseTargetPreparer
लागू करें. इसमें, बिल्ट-इन डिसएबलमेंट की सुविधा मिलती है. इससे, किसी प्रिपेयरर को आसानी से बंद किया जा सकता है.
बेहतर इंटरफ़ेस
setUp
का नैचुरल एक्सटेंशन tearDown
है. इसे एक अलग इंटरफ़ेस, ITargetCleaner
के ज़रिए उपलब्ध कराया जाता है. यह tearDown
इंटरफ़ेस उपलब्ध कराता है. इससे टेस्ट पूरा होने के बाद, setUp
में किए गए बदलावों को हटाया जा सकता है.
BaseTargetPreparer
क्लास भी ITargetCleaner
को एक्सटेंड करती है.
सुझाव
हमारा सुझाव है कि हर डेवलपर को सिर्फ़ एक मुख्य फ़ंक्शन तक सीमित रखा जाए. उदाहरण के लिए, एपीके इंस्टॉल करना या कोई कमांड चलाना. इससे, तैयारी करने वालों के लिए, कॉन्टेंट को दोबारा इस्तेमाल करना आसान हो जाता है.
इसके अलावा, नया टैक्स पेशेवर जोड़ने से पहले, उपलब्ध टैक्स पेशेवरों की सूची देखें, ताकि काम दोहराने से बचा जा सके. तैयार करने वाले लोग, tools/tradefederation/core/src/com/android/tradefed/targetprep/
में उपलब्ध हैं.
एक्सएमएल कॉन्फ़िगरेशन
ऑब्जेक्ट टैग target_preparer
है. उदाहरण के लिए:
<target_preparer class="com.android.tradefed.targetprep.InstallApkSetup">
<option name="install-arg" value="-d"/>
</target_preparer>
ज़्यादा जानकारी के लिए, सुइट सेट अप करना लेख पढ़ें.
टॉप-लेवल का सेटअप
अगर इसे टॉप-लेवल के सेटअप में तय किया गया है, तो यह हर डिवाइस के लिए सिर्फ़ एक बार चलता है. उदाहरण के लिए, cts-common.xml
. यह Android Compatibility Test Suite (CTS) टेस्ट के लिए टॉप-लेवल का सेटअप है.
मॉड्यूल-लेवल का सेटअप
अगर इसे मॉड्यूल लेवल पर तय किया जाता है, तो यह हमेशा उस मॉड्यूल से पहले चलता है. उदाहरण के लिए, backup/AndroidTest.xml
. इससे यह तय होता है कि Tradefed, backup
CTS मॉड्यूल को कैसे चलाता है.
ध्यान दें कि प्रिपेयरर, मॉड्यूल से पहले चलता है. हालांकि, यह सिस्टम स्टेटस की जांच करने वाले टूल के बाद चलता है.