यह दस्तावेज़ टेस्ट लैब के लिए एवीडी का वर्णन करता है, जिसमें लाभ और ज्ञात सीमाएं शामिल हैं। हम पूरे विकास जीवनचक्र के दौरान आपके ऐप का परीक्षण कैसे करें, इसके बारे में अनुशंसाएं भी प्रदान करते हैं।
जबकि टेस्ट लैब एवीडी एंड्रॉइड स्टूडियो के लिए एवीडी के समान हैं, दोनों के बीच कुछ अंतर हैं। उदाहरण के लिए, टेस्ट लैब में एवीडी में वाई-फाई कनेक्शन के बजाय एक अनुकरणीय डेटा कनेक्शन होता है।
.arm
या (Arm) प्रत्यय के साथ टेस्ट लैब AVDs उन्नत एमुलेटर हैं जो निम्नलिखित लाभ प्रदान करते हैं:
तेज़ परीक्षण निष्पादन समय
स्थिरता के लिए स्क्रीन आकार और घनत्व एंड्रॉइड स्टूडियो के एवीडी के साथ संरेखित
.arm
या (Arm) प्रत्यय के साथ AVD का उपयोग करने से अन्य प्रकार के भौतिक उपकरणों की तुलना में निम्नलिखित लाभ मिलते हैं:
फ़ायदा | विवरण | बक्सों का इस्तेमाल करें) |
उच्च उपलब्धता | आभासी उपकरणों के साथ परीक्षण करते समय आप परीक्षण चला सकते हैं और परीक्षण परिणाम अधिक तेज़ी से प्राप्त कर सकते हैं। चूंकि वर्चुअल डिवाइस मांग पर बनाए जाते हैं, इसलिए आपके परीक्षण लगभग तुरंत शुरू हो जाते हैं, जिससे आपके ऐप का त्वरित सत्यापन होता है। | आपके ऐप में छोटे अपडेट का परीक्षण, या प्रतिगमन परीक्षण के लिए। |
लंबी परीक्षण अवधि | भौतिक उपकरणों पर परीक्षण प्रत्येक उपकरण पर 45 मिनट की परीक्षण अवधि तक सीमित हैं। वर्चुअल डिवाइस 60 मिनट तक की परीक्षण अवधि का समर्थन करते हैं। | लंबे समय तक परीक्षण चलाना. |
कम लागत | आपके ऐप का परीक्षण करने के लिए उपयोग किए जाने वाले प्रत्येक वर्चुअल डिवाइस की कीमत $1 प्रति घंटा है। | निरंतर एकीकरण प्रणालियों का उपयोग करके, या कोड में जाँच करने से पहले दैनिक परीक्षण। अधिक जानने के लिए, टेस्ट लैब के लिए उपयोग स्तर, कोटा और मूल्य निर्धारण देखें। |
आभासी उपकरणों के साथ अपने ऐप का परीक्षण करें
आप अपने ऐप का परीक्षण आभासी उपकरणों के साथ उसी तरह कर सकते हैं जैसे आप इसका परीक्षण भौतिक उपकरणों के साथ करते हैं। जब आप परीक्षण मैट्रिक्स को कॉन्फ़िगर करने के लिए परीक्षण आयामों का चयन करते हैं तो बस वर्चुअल डिवाइस का चयन करें। टेस्ट लैब के साथ परीक्षण चलाने के बारे में अधिक जानने के लिए, फायरबेस टेस्ट लैब के साथ एंड्रॉइड के लिए परीक्षण शुरू करें देखें।
समर्थित मॉडल और एपीआई देखें
टेस्ट लैब द्वारा समर्थित AVD मॉडल और API देखने के लिए, निम्नलिखित कमांड चलाएँ:
gcloud firebase test android models list --filter=virtual
आपके ऐप के परीक्षण के लिए सर्वोत्तम अभ्यास
जब आप टेस्ट लैब के साथ अपने ऐप का परीक्षण करते हैं तो वर्चुअल डिवाइस आपके विकल्पों की सीमा बढ़ा देते हैं। हम ऐप विकास जीवनचक्र के दौरान आपके ऐप का परीक्षण करने के लिए इस अनुभाग में सर्वोत्तम प्रथाओं का उपयोग करने की सलाह देते हैं।
एंड्रॉइड स्टूडियो एमुलेटर या संलग्न भौतिक डिवाइस का उपयोग करें
अपना ऐप विकसित करते समय, प्रारंभिक सत्यापन के लिए प्रत्येक बिल्ड की जांच करने के लिए एंड्रॉइड स्टूडियो एमुलेटर या संलग्न भौतिक डिवाइस का उपयोग करें। यदि आपके पास इंस्ट्रूमेंटेशन परीक्षण हैं, तो आप इन परीक्षणों को एंड्रॉइड स्टूडियो से टेस्ट लैब द्वारा प्रदान किए गए भौतिक या आभासी उपकरणों पर भी चला सकते हैं।
साझा परियोजनाओं पर काम करते समय प्रत्येक कोड परिवर्तन पर सीआई सिस्टम का उपयोग करें
यदि आप किसी बड़े प्रोजेक्ट पर काम करते हैं, या यदि आप GitHub या इसी तरह की सेवा का उपयोग करके साझा की गई परियोजनाओं में योगदान करते हैं, तो हम अनुशंसा करते हैं कि आप निरंतर एकीकरण (CI) सिस्टम का उपयोग करें।
हर बार जब सीआई सिस्टम चलता है, या प्रत्येक पुल अनुरोध से पहले वर्चुअल डिवाइस पर अपने ऐप्स का परीक्षण करें। सीआई सिस्टम के साथ टेस्ट लैब का उपयोग करने के बारे में अधिक जानने के लिए, सतत एकीकरण सिस्टम के साथ एंड्रॉइड के लिए टेस्ट लैब का उपयोग करना देखें।
महत्वपूर्ण ऐप अपडेट जारी करने से पहले टेस्ट लैब के साथ भौतिक उपकरणों पर अपने ऐप का परीक्षण करें
इससे पहले कि आप महत्वपूर्ण यूआई और कार्यक्षमता परिवर्तनों के साथ ऐप अपडेट जारी करें, हम अनुशंसा करते हैं कि आप भौतिक उपकरणों पर अपने ऐप का परीक्षण करने के लिए टेस्ट लैब का उपयोग करें। इससे यह सुनिश्चित करने में मदद मिलेगी कि आपका ऐप लोकप्रिय भौतिक उपकरणों की एक विस्तृत श्रृंखला पर स्थिर और प्रदर्शनशील है। भौतिक उपकरणों पर परीक्षण किसी भी ऐप कार्यक्षमता के लिए परीक्षण कवरेज भी सुनिश्चित करता है जो भौतिक डिवाइस सुविधाओं पर निर्भर करता है जो आभासी उपकरणों द्वारा सिम्युलेटेड नहीं होते हैं। इन सुविधाओं के बारे में अधिक जानने के लिए, ज्ञात सीमाएँ देखें।
वर्चुअल डिवाइस अपडेट
समय-समय पर, एंड्रॉइड टीम नई वर्चुअल डिवाइस छवियां जोड़ती है, पुरानी छवियों को हटा देती है और मौजूदा छवियों को अपडेट करती है। हम इन अद्यतनों को अपनी वर्चुअल डिवाइस छवियों पर लागू करते हैं ताकि यह सुनिश्चित करने में सहायता मिल सके कि आप उन अद्यतन एंड्रॉइड संस्करणों के विरुद्ध परीक्षण कर रहे हैं जो आपके उपयोगकर्ताओं के अनुभवों को प्रतिबिंबित करते हैं।
दुर्लभ मामलों में, इन अद्यतनों के कारण परीक्षण अप्रत्याशित रूप से विफल हो सकते हैं। जब कोई ज्ञात संभावित ब्रेकिंग अपडेट होता है, तो टेस्ट लैब रिलीज़ नोट्स में जानकारी शामिल करेगा। सर्वोत्तम अभ्यास के रूप में, हम आपको परीक्षण ढाँचे का उपयोग करने की सलाह देते हैं - उदाहरण के लिए, एस्प्रेसो - जो जब भी संभव हो इन परिवर्तनों के लिए मजबूत होते हैं। जब यह संभव नहीं है, तो हम आपको आर्म वर्चुअल डिवाइस को लक्षित करने की सलाह देते हैं, जिन्हें आप कम बार अपडेट करने की उम्मीद कर सकते हैं।
ज्ञात सीमाएँ
कुछ भौतिक डिवाइस सुविधाएँ वर्तमान में वर्चुअल डिवाइस द्वारा सिम्युलेटेड नहीं हैं, या कुछ सीमाओं के साथ सिम्युलेटेड हैं। निम्न तालिका उन सुविधाओं का सारांश प्रस्तुत करती है जो वर्तमान में वर्चुअल डिवाइस पर उपलब्ध नहीं हैं, या जो कुछ सीमाओं के साथ उपलब्ध हैं।
विशेषता | विवरण |
एप्लीकेशन बाइनरी इंटरफेस (एबीआई) | सभी डिवाइस सभी ABI का समर्थन नहीं करते हैं. यदि आप एंड्रॉइड एनडीके के साथ विकास कर रहे हैं, तो अपने लक्षित उपकरणों द्वारा समर्थित एबीआई के लिए कोड उत्पन्न करना सुनिश्चित करें। अधिक जानकारी के लिए, टेस्ट लैब में उपलब्ध डिवाइस देखें। एबीआई प्रबंधन के बारे में अधिक जानने के लिए, एंड्रॉइड एबीआई देखें। यह जानने के लिए कि कौन सा एबीआई किसी उपकरण द्वारा समर्थित है, उपलब्ध परीक्षण उपकरणों की जांच करें देखें। नोट: यदि आपके परीक्षण मैट्रिक्स में कोई परीक्षण अमान्य के रूप में चिह्नित है, तो ऐसा इसलिए हो सकता है क्योंकि आपके ऐप की डिवाइस एबीआई द्वारा समर्थित मूल कोड पर निर्भरता है। |
ग्राफ़िक्स प्रदर्शन | Nexus और Pixel वर्चुअल डिवाइस सॉफ़्टवेयर ग्राफ़िक्स रेंडरिंग का उपयोग करते हैं। ग्राफ़िक्स-सघन अनुप्रयोगों का प्रदर्शन कम होगा। यदि आपका ऐप ग्राफ़िक्स-सघन है, तो इसके बजाय SmallPhone.arm और MediumPhone.arm मॉडल या भौतिक डिवाइस का उपयोग करें। |
स्क्रीन रिकॉर्डिंग | नेक्सस और पिक्सेल डिवाइस पर स्क्रीन रिकॉर्डिंग 1 फ्रेम प्रति सेकंड है। |
ग्राफ़िक्स एपीआई | OpenGL ES 3.x API स्तर 29 से नीचे के उपकरणों पर समर्थित नहीं है। नए उपकरण OpenGL/Vulkan API के साथ 100% संगत नहीं हैं। आप ग्राफ़िक्स में छोटे अंतर देख सकते हैं. |