इस दस्तावेज़ में, Test Lab के लिए AVD के बारे में बताया गया है. इसमें AVD के फ़ायदों और सीमाओं के बारे में जानकारी शामिल है. हम आपको डेवलपमेंट लाइफ़साइकल के दौरान, अपने ऐप्लिकेशन की जांच करने के तरीके के बारे में भी सुझाव देते हैं. Test Lab AVD, Android Studio के AVD की तरह ही होते हैं. हालांकि, इन्हें क्लाउड टेस्टिंग के साथ परफ़ॉर्मेंस के लिए ऑप्टिमाइज़ किया जाता है. इसलिए, इन दोनों में कुछ अंतर होते हैं.
Test Lab .arm या (Arm) सफ़िक्स वाले AVD, ऐडवांस एम्युलेटर होते हैं. इनसे ये फ़ायदे मिलते हैं:
टेस्ट को कम समय में पूरा किया जा सकता है
स्क्रीन के साइज़ और डेंसिटी, Android Studio के AVD के मुताबिक होती हैं, ताकि एक जैसी परफ़ॉर्मेंस मिले
जीपीयू की मदद से, ग्राफ़िक्स को बेहतर बनाया जा सकता है
वर्चुअल डिवाइसों का इस्तेमाल करने के फ़ायदों के बारे में, यहां दी गई टेबल में बताया गया है:
| फ़ायदा | ब्यौरा | इस्तेमाल के उदाहरण |
| ज़्यादा अपटाइम | वर्चुअल डिवाइसों की मदद से टेस्ट करने पर, टेस्ट के नतीजे ज़्यादा तेज़ी से मिलते हैं. वर्चुअल डिवाइस, ज़रूरत के हिसाब से बनाए जाते हैं. इसलिए, आपके टेस्ट लगभग तुरंत शुरू हो जाते हैं. इससे आपके ऐप्लिकेशन की तुरंत पुष्टि हो जाती है. | अपने ऐप्लिकेशन में छोटे-छोटे अपडेट की जांच करने या रिग्रेशन टेस्टिंग के लिए. |
| टेस्ट की अवधि ज़्यादा होती है | वर्चुअल डिवाइसों पर, 60 मिनट तक टेस्ट किया जा सकता है. फ़िज़िकल डिवाइसों पर, हर डिवाइस पर 45 मिनट तक ही टेस्ट किया जा सकता है. | ज़्यादा समय तक चलने वाले टेस्ट करने के लिए |
| कम लागत | वर्चुअल डिवाइसों की कीमत, एक डॉलर प्रति घंटा होती है. यह कीमत, आपके ऐप्लिकेशन की जांच के लिए इस्तेमाल किए गए हर वर्चुअल डिवाइस के लिए लागू होती है. | हर दिन टेस्ट करने के लिए, लगातार इंटिग्रेशन सिस्टम का इस्तेमाल करना या कोड की जांच करने से पहले कोड की जांच करना. ज़्यादा जानने के लिए, इस्तेमाल के लेवल, कोटा, और कीमत तय करने के बारे में पढ़ें Test Lab. |
वर्चुअल डिवाइसों की मदद से अपने ऐप्लिकेशन की जांच करना
वर्चुअल डिवाइसों की मदद से अपने ऐप्लिकेशन की जांच, उसी तरह की जा सकती है जिस तरह फ़िज़िकल डिवाइसों की मदद से की जाती है. टेस्ट मैट्रिक्स कॉन्फ़िगर करते समय, अपने टेस्ट के लिए वर्चुअल डिवाइस चुने जा सकते हैं. Test Lab की मदद से टेस्ट करने के बारे में ज़्यादा जानने के लिए, Firebase Test Lab की मदद से Android के लिए टेस्ट करनाFirebase Test Lab लेख पढ़ें.Test Lab
काम करने वाले मॉडल और एपीआई देखना
Test Lab के साथ काम करने वाले AVD मॉडल और एपीआई देखने के लिए, Test Lab यह कमांड चलाएं:
gcloud firebase test android models list --filter=virtual
अपने ऐप्लिकेशन की जांच करने के सबसे सही तरीके
Test Lab की मदद से अपने ऐप्लिकेशन की जांच करने पर, वर्चुअल डिवाइसों की वजह से आपको ज़्यादा विकल्प मिलते हैं 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 NDK की मदद से डेवलपमेंट किया जा रहा है, तो पक्का करें कि आपके टारगेट डिवाइसों के साथ काम करने वाले एबीआई के लिए कोड जनरेट किया गया हो. इसके लिए, Test Lab में उपलब्ध डिवाइस देखें. एबीआई मैनेजमेंट के बारे में ज़्यादा जानने के लिए, Android के एबीआई लेख पढ़ें.Test Lab
ध्यान दें: अगर आपके टेस्ट मैट्रिक्स में किसी टेस्ट को अमान्य के तौर पर मार्क किया गया है, तो ऐसा इसलिए हो सकता है, क्योंकि आपके ऐप्लिकेशन में नेटिव कोड की ऐसी डिपेंडेंसी है जो डिवाइस के एबीआई के साथ काम नहीं करती. |
| ग्राफ़िक्स परफ़ॉर्मेंस | Nexus और Pixel के वर्चुअल डिवाइस, सॉफ़्टवेयर ग्राफ़िक्स रेंडरिंग का इस्तेमाल करते हैं. ग्राफ़िक्स वाले ऐप्लिकेशन की परफ़ॉर्मेंस कम हो सकती है. अगर आपका ऐप्लिकेशन ग्राफ़िक्स वाला है, तो हमारा सुझाव है कि इसके बजाय SmallPhone.arm, MediumPhone.arm या फ़िज़िकल डिवाइसों का इस्तेमाल करें. |
| ग्राफ़िक्स एपीआई | एपीआई लेवल 29 से पहले के डिवाइसों पर, OpenGL ES 3.x काम नहीं करता. नए डिवाइस, OpenGL/Vulkan एपीआई के साथ पूरी तरह से काम नहीं करते. इसलिए, आपको ग्राफ़िक्स में थोड़ा अंतर दिख सकता है. |
| Google Play Store ऐप्लिकेशन | Arm वर्चुअल डिवाइसों पर, Google Play Store ऐप्लिकेशन काम नहीं करता. |
| ऑगमेंटेड रिएलिटी (एआर) की सुविधा | वर्चुअल डिवाइसों पर, ऑगमेंटेड रिएलिटी (एआर) की सुविधा की जांच नहीं की जा सकती. |
| एपीआई के पुराने लेवल | Test Lab Arm वर्चुअल डिवाइस, एपीआई लेवल 26 से पहले के लेवल के साथ काम नहीं करते. |
अगले चरण
- नतीजे देखना.Firebase Test Lab