टारगेट तैयार करने वाले टूल, उन टेस्ट लेवल में टेस्ट से पहले चालू किए जाते हैं जिनमें उन्हें तय किया गया है. इससे किसी भी डिवाइस को सेटअप करके, टेस्ट को बिना किसी रुकावट के चलाया जा सकता है.
बेस इंटरफ़ेस
बेस इंटरफ़ेस ITargetPreparer
है. इसकी मदद से, setUp
तरीके को लागू किया जा सकता है. हमारा सुझाव है कि आप हमारी बुनियादी एब्स्ट्रैक्ट क्लास BaseTargetPreparer
को लागू करें. इसमें, प्रिपरर को आसानी से बंद करने के लिए, बिल्ट-इन सुविधा उपलब्ध होती है.
बेहतर इंटरफ़ेस
setUp
का नॉर्मल एक्सटेंशन tearDown
है. इसे ITargetCleaner
नाम के अलग इंटरफ़ेस से उपलब्ध कराया जाता है. इससे tearDown
इंटरफ़ेस मिलता है, जिसकी मदद से टेस्ट के बाद setUp
में किए गए किसी भी काम को हटाया जा सकता है.
BaseTargetPreparer
क्लास की अवधि ITargetCleaner
भी होती है.
सुझाव
हमारा सुझाव है कि हर प्रिपरर को एक ही मुख्य फ़ंक्शन के लिए सीमित किया जाए. उदाहरण के लिए, APK इंस्टॉल करना या कोई निर्देश चलाना. इससे, प्रिपरर को आसानी से फिर से इस्तेमाल किया जा सकता है.
डुप्लीकेट काम से बचने के लिए नया दस्तावेज़ जोड़ने से पहले, उपलब्ध
तैयारियों की सूची भी देख लें. प्रिपरर, 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
सीटीएस मॉड्यूल को कैसे चलाता है.
ध्यान दें कि जब तैयार करने वाला टूल, मॉड्यूल से पहले चलता है, तो यह किसी भी सिस्टम स्टेटस चेकर के बाद चलता है.