Android वर्चुअल डिवाइसों की मदद से टेस्टिंग शुरू करें

इस दस्तावेज़ में, Test Lab के लिए एवीडी के बारे में बताया गया है. इसमें इसके फ़ायदों और सीमाओं के बारे में भी बताया गया है. हम आपको यह भी सुझाव देते हैं कि डेवलपमेंट लाइफ़साइकल के दौरान, अपने ऐप्लिकेशन की जांच कैसे करें. Test Lab एवीडी, Android Studio के लिए एवीडी की तरह ही होते हैं. हालांकि, इन्हें क्लाउड टेस्टिंग के साथ परफ़ॉर्मेंस के लिए ऑप्टिमाइज़ किया जाता है. इसलिए, दोनों में कुछ अंतर होते हैं.

Test Lab .arm या (Arm) सफ़िक्स वाले एवीडी, ऐडवांस एम्युलेटर होते हैं. इनसे ये फ़ायदे मिलते हैं:

  • जांच करने में कम समय लगता है

  • Android Studio के एवीडी के साथ अलाइन किए गए स्क्रीन साइज़ और डेंसिटी, ताकि एक जैसा अनुभव मिले

  • जीपीयू की मदद से काम करने वाला ऐक्सेलरेटेड ग्राफ़िक्स

नीचे दी गई टेबल में, वर्चुअल डिवाइसों का इस्तेमाल करने के फ़ायदों के बारे में बताया गया है:

फ़ायदा ब्यौरा इस्तेमाल के उदाहरण
ज़्यादा अपटाइम वर्चुअल डिवाइसों की मदद से टेस्ट करने पर, टेस्ट को तेज़ी से चलाया जा सकता है और टेस्ट के नतीजे ज़्यादा तेज़ी से मिल सकते हैं. वर्चुअल डिवाइसों को ज़रूरत के हिसाब से बनाया जाता है. इसलिए, आपके टेस्ट तुरंत शुरू हो जाते हैं. इससे आपके ऐप्लिकेशन की पुष्टि तुरंत हो जाती है. अपने ऐप्लिकेशन में छोटे-मोटे अपडेट की जांच करने या रिग्रेशन टेस्टिंग के लिए.
टेस्ट की अवधि ज़्यादा होना वर्चुअल डिवाइसों पर, ज़्यादा से ज़्यादा 60 मिनट तक टेस्ट किया जा सकता है. फ़िज़िकल डिवाइसों पर टेस्ट करने की अवधि, हर डिवाइस पर 45 मिनट तक सीमित है. ज़्यादा समय तक टेस्ट चलाना
कम लागत ऐप्लिकेशन की जांच के लिए इस्तेमाल किए जाने वाले हर वर्चुअल डिवाइस के लिए, एक डॉलर प्रति घंटे के हिसाब से शुल्क लिया जाता है. लगातार इंटिग्रेशन सिस्टम का इस्तेमाल करके या कोड में चेक इन करने से पहले, रोज़ाना टेस्टिंग करना. ज़्यादा जानने के लिए, Test Lab के लिए इस्तेमाल के लेवल, कोटा, और कीमत देखें.

वर्चुअल डिवाइसों की मदद से अपने ऐप्लिकेशन की जांच करना

वर्चुअल डिवाइसों पर अपने ऐप्लिकेशन को उसी तरह टेस्ट किया जा सकता है जिस तरह फ़िज़िकल डिवाइसों पर किया जाता है. जांच का मैट्रिक्स कॉन्फ़िगर करते समय, जांच के लिए वर्चुअल डिवाइस चुने जा सकते हैं. Test Lab की मदद से टेस्ट चलाने के बारे में ज़्यादा जानने के लिए, Firebase Test Lab की मदद से Android के लिए टेस्ट करना शुरू करें लेख पढ़ें.

काम करने वाले मॉडल और एपीआई देखना

Test Lab पर काम करने वाले एवीडी मॉडल और एपीआई देखने के लिए, यह कमांड चलाएं:

gcloud firebase test android models list --filter=virtual

अपने ऐप्लिकेशन की जांच करने के सबसे सही तरीके

Test Lab की मदद से ऐप्लिकेशन की जांच करते समय, वर्चुअल डिवाइसों से आपको ज़्यादा विकल्प मिलते हैं. हमारा सुझाव है कि ऐप्लिकेशन डेवलपमेंट लाइफ़साइकल के दौरान, अपने ऐप्लिकेशन की जांच करने के लिए यहां दिए गए सबसे सही तरीके अपनाएं:

Android Studio एम्युलेटर या अटैच किए गए फ़िज़िकल डिवाइस का इस्तेमाल करना

ऐप्लिकेशन डेवलप करते समय, Android Studio एमुलेटर या अटैच किए गए फ़िज़िकल डिवाइस का इस्तेमाल करें. इससे, शुरुआती पुष्टि के लिए हर बिल्ड की जांच की जा सकती है. अगर आपके पास इंस्ट्रुमेंटेशन टेस्ट हैं, तो उन्हें Android Studio से भी चलाया जा सकता है. इसके लिए, Test Lab से मिले फ़िज़िकल या वर्चुअल डिवाइसों का इस्तेमाल किया जा सकता है.

शेयर किए गए प्रोजेक्ट पर काम करते समय, कोड में किए गए हर बदलाव के लिए सीआई सिस्टम का इस्तेमाल करना

अगर किसी बड़े प्रोजेक्ट पर काम किया जा रहा है या GitHub या ऐसी ही किसी साइट का इस्तेमाल करके शेयर किए गए प्रोजेक्ट में योगदान दिया जा रहा है, तो हमारा सुझाव है कि आप लगातार इंटिग्रेशन (सीआई) सिस्टम का इस्तेमाल करें. जब भी सीआई सिस्टम चलता है या हर पुल अनुरोध से पहले, वर्चुअल डिवाइसों पर अपने ऐप्लिकेशन की जांच करें. सीआई सिस्टम के साथ Test Lab का इस्तेमाल करने के बारे में ज़्यादा जानने के लिए, लगातार इंटिग्रेशन सिस्टम के साथ Android के लिए Test Lab का इस्तेमाल करना लेख पढ़ें.

ऐप्लिकेशन के अहम अपडेट रिलीज़ करने से पहले, Test Lab की मदद से फ़िज़िकल डिवाइसों पर अपने ऐप्लिकेशन की जांच करें

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

वर्चुअल डिवाइस से जुड़े अपडेट

Android की टीम समय-समय पर, वर्चुअल डिवाइस की नई इमेज जोड़ती है, पुरानी इमेज हटाती है, और मौजूदा इमेज अपडेट करती है. हम इन अपडेट को अपने वर्चुअल डिवाइस की इमेज पर लागू करते हैं. इससे यह पक्का करने में मदद मिलती है कि आपके ऐप्लिकेशन की जांच, Android के अप-टू-डेट वर्शन पर की जा रही है. ये वर्शन, आपके उपयोगकर्ताओं के अनुभवों को दिखाते हैं.

बहुत कम मामलों में, इन अपडेट की वजह से टेस्ट अचानक फ़ेल हो सकते हैं. अगर किसी अपडेट से, मौजूदा सिस्टम में कोई गड़बड़ी होने की संभावना होती है, तो Test Lab रिलीज़ नोट में इसकी जानकारी शामिल करेगा. हमारा सुझाव है कि आप ऐसे टेस्ट फ़्रेमवर्क का इस्तेमाल करें जो इन बदलावों के हिसाब से काम कर सकें. उदाहरण के लिए, Espresso. अगर ऐसा करना संभव न हो, तो हमारा सुझाव है कि आप Arm वर्चुअल डिवाइसों को टारगेट करें. इनमें अपडेट कम बार आते हैं.

सीमाएं

फ़िलहाल, फ़िज़िकल डिवाइस की कुछ सुविधाएं वर्चुअल डिवाइसों पर सिम्युलेट नहीं की जाती हैं या कुछ सीमाओं के साथ सिम्युलेट की जाती हैं. नीचे दी गई टेबल में, उन सुविधाओं की खास जानकारी दी गई है जो फ़िलहाल वर्चुअल डिवाइसों पर उपलब्ध नहीं हैं या कुछ सीमाओं के साथ उपलब्ध हैं:

सुविधा जानकारी
ऐप्लिकेशन बाइनरी इंटरफ़ेस (एबीआई) सभी डिवाइसों पर सभी एबीआई काम नहीं करते. अगर Android एनडीके का इस्तेमाल करके ऐप्लिकेशन डेवलप किया जा रहा है, तो पक्का करें कि आपने टारगेट किए गए डिवाइसों पर काम करने वाले एबीआई के लिए कोड जनरेट किया हो. इसके लिए, Test Lab में उपलब्ध डिवाइस देखें. एबीआई मैनेजमेंट के बारे में ज़्यादा जानने के लिए, Android एबीआई देखें.

ध्यान दें: अगर आपके टेस्ट मैट्रिक्स में किसी टेस्ट को अमान्य के तौर पर मार्क किया गया है, तो ऐसा इसलिए हो सकता है, क्योंकि आपका ऐप्लिकेशन किसी ऐसे नेटिव कोड पर निर्भर है जो डिवाइस के एबीआई के साथ काम नहीं करता.

ग्राफ़िक्स की परफ़ॉर्मेंस Nexus और Pixel वर्चुअल डिवाइस, सॉफ़्टवेयर ग्राफ़िक्स रेंडरिंग का इस्तेमाल करते हैं. ज़्यादा ग्राफ़िक वाले ऐप्लिकेशन की परफ़ॉर्मेंस कम हो सकती है. अगर आपके ऐप्लिकेशन में ज़्यादा ग्राफ़िक हैं, तो SmallPhone.arm, MediumPhone.arm या फ़िज़िकल डिवाइसों का इस्तेमाल करें.
ग्राफ़िक्स एपीआई एपीआई लेवल 29 से पहले के लेवल वाले डिवाइसों पर, OpenGL ES 3.x काम नहीं करता. नए डिवाइस, OpenGL/Vulkan API के साथ पूरी तरह से काम नहीं करते. इसलिए, आपको ग्राफ़िक में थोड़ा अंतर दिख सकता है.
Google Play Store ऐप्लिकेशन Google Play Store ऐप्लिकेशन, Arm वर्चुअल डिवाइसों पर काम नहीं करता.
ऑगमेंटेड रिएलिटी (एआर) की सुविधा वर्चुअल डिवाइसों पर, ऑगमेंटेड रिएलिटी (एआर) की सुविधा को टेस्ट नहीं किया जा सकता.
पुराने एपीआई लेवल Test Lab Arm वर्चुअल डिवाइसों पर, 26 से कम एपीआई लेवल काम नहीं करते.

अगले चरण