Google is committed to advancing racial equity for Black communities. See how.
इस पेज का अनुवाद Cloud Translation API से किया गया है.
Switch to English

ट्रेड फेडरेशन ओवरव्यू

ट्रेड फेडरेशन (शॉर्ट के लिए ट्रेडफेड या टीएफ) एक निरंतर परीक्षण ढांचा है जो एंड्रॉइड उपकरणों पर परीक्षण चलाने के लिए डिज़ाइन किया गया है। उदाहरण के लिए, Tradefed का उपयोग संगतता परीक्षण सूट (CTS) और विक्रेता परीक्षण सूट (VTS) चलाने के लिए किया जाता है।

ट्रेड फेडरेशन एक जावा एप्लिकेशन है जो एक होस्ट कंप्यूटर पर चलता है, और adb पर ddmlib (DDMS के पीछे पुस्तकालय) का उपयोग करके एक या अधिक एंड्रॉइड डिवाइसों के लिए संचार करता है।

हमने टीएफ की कुछ मुख्य विशेषताओं को नीचे सूचीबद्ध किया है, साथ में युगल नमूना usecases। उस ने कहा, यदि आप सही में कूदना चाहते हैं और शुरू करना चाहते हैं, तो आप सीधे यहां स्टार्ट पेज के लिए जा सकते हैं।

विशेषताएं

  • मॉड्यूलर, लचीला, स्केलेबल डिजाइन
  • कई अलग-अलग प्रकार के एंड्रॉइड परीक्षणों को चलाने के लिए समर्थन में बनाया गया है: इंस्ट्रूमेंटेशन , यूरियोटोमेटर , मूल / gtest, होस्ट-आधारित JUnit, आदि।
  • विश्वसनीयता और वसूली तंत्र अदब के शीर्ष पर प्रदान करता है
  • समानांतर में कई उपकरणों पर शेड्यूलिंग और रनिंग टेस्ट का समर्थन करता है

अपने मौजूदा परीक्षणों जैसे इंस्ट्रूमेंटेशन को चलाने के बारे में सबसे अधिक जानकारी के लिए टीएफ के माध्यम से परीक्षण देखें।

बक्सों का इस्तेमाल करें

ट्रेड फेडरेशन की प्रतिरूपकता मौजूदा निर्माण, परीक्षण और रिपोर्टिंग इन्फ्रास्ट्रक्चर के साथ वातावरण में स्लॉट करने के लिए इसे सीधा बनाती है। हम कुछ प्रदर्शनकारी usecases के नीचे सूचीबद्ध करते हैं, जहां ट्रेडफेड कुशल, स्केलेबल परीक्षण प्रथाओं को सक्षम कर सकता है।

सबसे पहले, प्रश्न के संदर्भ में संभावित usecases के परिदृश्य पर विचार करना उपयोगी है "कौन से भाग परिवर्तनीय हैं, और ये भाग स्थिर हैं?" उदाहरण के लिए, एक डिवाइस ओईएम फ्रेमवर्क, सिस्टम और हार्डवेयर को संशोधित कर सकता है, लेकिन मौजूदा अनुप्रयोगों पर इसका बहुत कम या कोई प्रभाव नहीं है। दूसरी ओर एक एप्लिकेशन डेवलपर, एप्लिकेशन को संशोधित कर सकता है, लेकिन सिस्टम या ढांचे के अधिकांश पहलुओं पर बहुत कम नियंत्रण रखता है।

नतीजतन, प्रत्येक usecase में एक इकाई के पास अलग-अलग परीक्षण लक्ष्य होंगे, और परीक्षण विफलताओं के एक सेट के मामले में अलग-अलग विकल्प होंगे। इन मतभेदों के बावजूद, ट्रेड फेडरेशन उनकी प्रत्येक परीक्षण प्रक्रिया को कुशल, लचीला और स्केलेबल बनाने में मदद कर सकता है।

डिवाइस ओईएम

एक उपकरण OEM हार्डवेयर बनाता है, और अक्सर उस हार्डवेयर पर अच्छी तरह से चलने के लिए एंड्रॉइड सिस्टम और फ्रेमवर्क को ट्विस्ट करेगा। हार्डवेयर और सिस्टम स्तरों पर स्थिरता और प्रदर्शन को बनाए रखते हुए और उन परिवर्तनों को मौजूदा अनुप्रयोगों के लिए अनुकूलता नहीं तोड़ती है, यह सुनिश्चित करने के लिए OEM उन लक्ष्यों को पूरा करने का प्रयास कर सकता है।

ओईएम एक उपकरण चमकती मॉड्यूल को लागू कर सकता है जो जीवनचक्र के लक्ष्य सेटअप चरण के दौरान निष्पादित करेगा। उस मॉड्यूल का उसके निष्पादन की अवधि के दौरान डिवाइस पर पूरा नियंत्रण होगा, जो उसे डिवाइस को संभवतः बूटलोडर, फ्लैश में मजबूर करने की अनुमति देगा, और फिर डिवाइस को वापस उपयोगकर्ता मोड में रिबूट करने के लिए मजबूर करेगा। एक सतत निर्माण प्रणाली में टाई करने के लिए एक मॉड्यूल के साथ संयुक्त, यह ओईएम को अपने डिवाइस पर परीक्षण चलाने की अनुमति देगा क्योंकि वे सिस्टम-स्तरीय फर्मवेयर और जावा-स्तर के ढांचे में बदलाव करते हैं।

एक बार डिवाइस पूरी तरह से बूट हो जाने के बाद, ओईएम मौजूदा JUnit- आधारित परीक्षणों का लाभ उठाने में सक्षम होगा, या ब्याज की कार्यक्षमता को सत्यापित करने के लिए नए लिख सकता है। अंत में, वे मौजूदा परीक्षण-परिणाम रिपॉजिटरी में बाँधने के लिए एक या एक से अधिक परिणाम रिपोर्टिंग मॉड्यूल लिख सकते हैं, या सीधे परिणाम की रिपोर्ट कर सकते हैं (उदाहरण के लिए, ईमेल द्वारा )।

ऐप डेवलपर

एक एप्लिकेशन डेवलपर एक ऐप बनाता है जिसे विभिन्न प्लेटफ़ॉर्म संस्करणों और विभिन्न प्रकार के उपकरणों में अच्छी तरह से चलाने की आवश्यकता होती है। यदि किसी विशेष प्लेटफ़ॉर्म संस्करण और / या डिवाइस पर कोई समस्या आती है, तो एकमात्र उपाय एक वर्कअराउंड जोड़ना और आगे बढ़ना है। बड़े डेवलपर्स के लिए, परीक्षण प्रक्रिया को एक सतत निर्माण अनुक्रम में शामिल किया जा सकता है। छोटे डेवलपर्स के लिए, इसे समय-समय पर या हाथ से किक किया जा सकता है।

अधिकांश ऐप डेवलपर एपीके टेस्ट इंस्टॉलेशन मॉड्यूल का उपयोग करेंगे जो पहले से ही टीएफ में मौजूद हैं। एक संस्करण है जो स्थानीय फाइल सिस्टम से स्थापित होता है , साथ ही एक संस्करण जो एक बिल्ड सेवा से डाउनलोड किए गए एप्स को स्थापित कर सकता है । यह ध्यान रखना महत्वपूर्ण है कि बाद वाले संस्करण एक ही मेजबान मशीन पर चल रहे मनमाने ढंग से कई TF उदाहरणों के साथ ठीक से काम करना जारी रखेंगे।

कई उपकरणों से निपटने में TF की प्रवीणता के कारण, उस परीक्षण के लिए उपयोग किए गए डिवाइस के प्रकार द्वारा प्रत्येक परीक्षा परिणाम को वर्गीकृत करना सीधा होगा। इस प्रकार, TF संभावित रूप से एप्लिकेशन के प्रत्येक निर्माण के लिए 2-आयामी (या बहु-आयामी) संगतता मैट्रिक्स उत्पन्न कर सकता है।

परीक्षण सेवा

उदाहरण के लिए, एक परीक्षण सेवा, ऐप डेवलपरों को ऐप प्रस्तुत करने और ऐप के लिए बिजली के उपयोग को निर्धारित करने के लिए पावर-माप उपकरणों के साथ उपकरणों पर परीक्षण चलाने की अनुमति दे सकती है। यह पूर्व के दो उपयोगिताओं से अलग है जिसमें सर्विस बिल्डर उपकरणों या उन अनुप्रयोगों को नियंत्रित नहीं करता है जिन्हें चलाया जा रहा है।

क्योंकि ट्रेड फेडरेशन किसी भी जावा वर्ग को चला सकता है जो सरल IRemoteTest इंटरफ़ेस को लागू करता है, यह ड्राइवरों को लिखने के लिए तुच्छ है जो डिवाइस पर चलाए जा रहे परीक्षण के मामले के साथ कुछ बाहरी हार्डवेयर का समन्वय कर सकते हैं। चालक स्वयं थ्रेड्स को स्पॉन कर सकता है, अन्य सर्वरों को अनुरोध भेज सकता है, या ऐसा कुछ भी कर सकता है जिसकी उसे आवश्यकता हो। इसके अलावा, परिणाम रिपोर्टिंग इंटरफ़ेस की सादगी और बहुमुखी प्रतिभा, ITestInvocationListener , का अर्थ है कि यह इसी तरह से मानक परीक्षण रिपोर्टिंग पाइपलाइन में मनमाने ढंग से परीक्षण परिणामों (उदाहरण के लिए, संख्यात्मक विद्युत मैट्रिक्स सहित) का प्रतिनिधित्व करने के लिए सीधा है।