फायरबेस टेस्ट लैब आपको कई प्रकार के डिवाइस और कॉन्फ़िगरेशन पर अपने ऐप का परीक्षण करने देता है। यह आरंभ करें मार्गदर्शिका आपको अनुसरण करने के लिए कार्यान्वयन पथ प्रदान करती है, साथ ही टेस्ट लैब की Android पेशकशों का परिचय भी देती है।
टेस्ट लैब कोटा और मूल्य निर्धारण योजनाओं के बारे में जानकारी के लिए, उपयोग, कोटा और मूल्य निर्धारण देखें।
महत्वपूर्ण अवधारणाएं
जब आप अपने द्वारा चुने गए उपकरणों और कॉन्फ़िगरेशन के विरुद्ध परीक्षण या परीक्षण मामलों का एक सेट चलाते हैं, तो परीक्षण लैब आपके ऐप के विरुद्ध एक बैच में परीक्षण चलाता है, फिर परिणामों को एक परीक्षण मैट्रिक्स के रूप में प्रदर्शित करता है।
उपकरण × टेस्ट निष्पादन = टेस्ट मैट्रिक्स
- उपकरण
- एक भौतिक या आभासी उपकरण (केवल Android) जिस पर आप परीक्षण चलाते हैं, जैसे फ़ोन, टैबलेट या पहनने योग्य उपकरण। परीक्षण मैट्रिक्स में उपकरणों की पहचान डिवाइस मॉडल, ओएस संस्करण, स्क्रीन ओरिएंटेशन और लोकेल (भूगोल और भाषा सेटिंग्स के रूप में भी जाना जाता है) द्वारा की जाती है।
- परीक्षण, परीक्षण निष्पादन
- एक उपकरण पर चलाने के लिए एक परीक्षण (या परीक्षण मामलों का एक सेट)। आप प्रति उपकरण एक परीक्षण चला सकते हैं, या वैकल्पिक रूप से परीक्षण को विखंडित कर सकते हैं और इसके परीक्षण मामलों को विभिन्न उपकरणों पर चला सकते हैं।
- टेस्ट मैट्रिक्स
- आपके परीक्षण निष्पादन के लिए स्थितियाँ और परीक्षण परिणाम शामिल हैं। यदि मैट्रिक्स में कोई परीक्षण निष्पादन विफल हो जाता है, तो संपूर्ण मैट्रिक्स विफल हो जाता है।
चरण 1 : टेस्ट लैब में अपलोड करने के लिए अपना टेस्ट तैयार करें
उपलब्ध परीक्षण प्रकार
आप टेस्ट लैब के साथ निम्न परीक्षण चला सकते हैं। ध्यान दें कि सभी परीक्षण प्रकार भौतिक उपकरणों पर 45 मिनट और आभासी उपकरणों पर 60 मिनट चलने तक सीमित हैं। कोई न आया हुआ अपवाद एक परीक्षण विफलता का कारण होगा।
इंस्ट्रुमेंटेशन टेस्ट या इंस्ट्रुमेंटेड यूनिट टेस्ट : एक टेस्ट जिसे आपने एस्प्रेसो या यूआई ऑटोमेटर फ्रेमवर्क का उपयोग करके लिखा है। इस परीक्षण के साथ, आप AndroidJUnitRunnerAPIs का उपयोग करके सही कार्यक्षमता को सत्यापित करने के लिए अपने ऐप की स्थिति के बारे में स्पष्ट दावा कर सकते हैं।
टेस्ट लैब में चलाने के लिए अपने टेस्ट को कैसे तैयार करें, इस पर निर्देशों के लिए एक इंस्ट्रूमेंटेशन टेस्ट चलाएं पर जाएं।
इंस्ट्रुमेंटेशन परीक्षण बनाने के तरीके के बारे में निर्देशों के लिए Android डेवलपर दस्तावेज़ देखें।
रोबो परीक्षण : एक स्वचालित परीक्षण जो आपके ऐप के यूआई का विश्लेषण करता है और फिर आपको कोई कोड लिखने की आवश्यकता के बिना, उपयोगकर्ता गतिविधियों का अनुकरण करके इसे व्यवस्थित रूप से एक्सप्लोर करता है। अधिक जानकारी के लिए रोबो परीक्षणों के बारे में देखें।
गेम लूप टेस्ट : एक टेस्ट जो गेमिंग ऐप्स में खिलाड़ी की क्रियाओं को अनुकरण करने के लिए "डेमो मोड" का उपयोग करता है। यह सत्यापित करने का एक तेज़ और स्केलेबल तरीका है कि आपका गेम उपयोगकर्ताओं के लिए अच्छा प्रदर्शन करता है। जब आप गेम लूप टेस्ट चलाना चुनते हैं, तो आप यह कर सकते हैं:
अपने गेम इंजन के मूल परीक्षण लिखें
अलग-अलग UI या टेस्टिंग फ्रेमवर्क के लिए एक ही कोड लिखने से बचें
एकल परीक्षण निष्पादन में चलाने के लिए वैकल्पिक रूप से कई लूप बनाएं (अधिक जानने के लिए गेम लूप टेस्ट के बारे में देखें)। आप लेबल का उपयोग करके लूप को व्यवस्थित भी कर सकते हैं ताकि आप उनका ट्रैक रख सकें और विशिष्ट लूप को फिर से चला सकें।
टेस्ट लैब के साथ इस टेस्ट को चलाने के निर्देशों के लिए गेम लूप टेस्ट चलाएं देखें।
आपका परीक्षण चलाने के लिए उपकरण
अपना परीक्षण चलाने के लिए आप निम्न टूल चुन सकते हैं:
पहली बार उपयोगकर्ताओं के लिए अनुशंसित : फायरबेस कंसोल आपको एक ऐप अपलोड करने और अपने वेब ब्राउज़र से परीक्षण शुरू करने देता है। इस टूल का उपयोग करके परीक्षण चलाने के निर्देशों के लिए Firebase कंसोल के साथ परीक्षण देखें।
एंड्रॉइड स्टूडियो एकीकरण आपको अपने विकास के माहौल को छोड़े बिना अपने ऐप का परीक्षण करने देता है। इस टूल का उपयोग करके परीक्षण चलाने के निर्देशों के लिए Android Studio के साथ परीक्षण देखें।
Gcloud कमांड लाइन इंटरफ़ेस आपको कमांड लाइन से अंतःक्रियात्मक रूप से परीक्षण चलाने में सक्षम बनाता है, और यह आपके स्वचालित निर्माण और परीक्षण प्रक्रिया के भाग के रूप में स्क्रिप्टिंग के लिए भी उपयुक्त है। इस टूल का उपयोग करके परीक्षण चलाने के निर्देशों के लिए gcloud CLI के साथ परीक्षण देखें।
जब आप अल्फा या बीटा चैनल का उपयोग करके अपने ऐप की एपीके फ़ाइलों को प्ले स्टोर पर अपलोड और प्रकाशित करते हैं, तो आप टेस्ट लैब के साथ अपने ऐप का नि: शुल्क परीक्षण भी कर सकते हैं। अधिक जानकारी के लिए, मुद्दों और रोबो परीक्षणों की पहचान करने के लिए प्री-लॉन्च रिपोर्ट का उपयोग करें देखें।
चरण 2 : अपना परीक्षण उपकरण चुनें
टेस्ट लैब Google डेटा सेंटर में स्थापित और चल रहे एंड्रॉइड डिवाइस के कई मेक और मॉडल पर परीक्षण का समर्थन करता है। टेस्ट लैब में उपकरणों पर परीक्षण आपको उन समस्याओं का पता लगाने में मदद करता है जो एंड्रॉइड स्टूडियो में एमुलेटर का उपयोग करके आपके ऐप का परीक्षण करते समय नहीं हो सकती हैं। अधिक जानने के लिए, उपलब्ध डिवाइस देखें।
चरण 3 : परीक्षा परिणामों की समीक्षा करें
इस बात पर ध्यान दिए बिना कि आप अपने परीक्षण कैसे शुरू करते हैं, आपके सभी परीक्षण परिणाम टेस्ट लैब द्वारा प्रबंधित किए जाते हैं और इन्हें ऑनलाइन देखा जा सकता है।
परीक्षा परिणाम सारांश स्वचालित रूप से संग्रहीत होता है और इसे फायरबेस कंसोल में देखा जा सकता है। इसमें आपके परीक्षण के लिए सबसे अधिक प्रासंगिक डेटा होता है, जिसमें परीक्षण केस-विशिष्ट वीडियो, स्क्रीनशॉट, उत्तीर्ण, विफल या अस्थिर परिणाम प्राप्त करने वाले परीक्षणों की संख्या, और बहुत कुछ शामिल है।
कच्चे परीक्षण के परिणामों में परीक्षण लॉग और ऐप की विफलता का विवरण होता है, और यह स्वचालित रूप से Google क्लाउड बकेट में संग्रहीत होता है। यदि आप एक बकेट निर्दिष्ट करते हैं, तो आप भंडारण की लागत के लिए जिम्मेदार होंगे। यदि आप कोई बकेट निर्दिष्ट नहीं करते हैं, तो परीक्षण लैब आपके लिए नि:शुल्क एक बकेट बनाता है।
अधिक विवरण के लिए, फायरबेस टेस्ट लैब परिणामों का विश्लेषण देखें।
जब आप Android Studio से परीक्षण शुरू करते हैं, तो आप अपने विकास परिवेश के अंदर से भी परीक्षण परिणामों की समीक्षा कर सकते हैं।
डिवाइस की सफाई
Google आपके ऐप डेटा की सुरक्षा को बहुत गंभीरता से लेता है। हम यह सुनिश्चित करने के लिए कि वे नए परीक्षण चलाने के लिए तैयार हैं, प्रत्येक परीक्षण के बाद ऐप डेटा को हटाने और भौतिक उपकरणों के लिए सिस्टम सेटिंग्स को रीसेट करने के लिए उद्योग-मानक सर्वोत्तम प्रथाओं का पालन करते हैं। उन उपकरणों के लिए जिन्हें हम एक कस्टम पुनर्प्राप्ति छवि के साथ फ्लैश कर सकते हैं, हम इन उपकरणों को टेस्ट रन के बीच फ्लैश करके एक कदम आगे जाते हैं।
टेस्ट लैब द्वारा उपयोग किए जाने वाले वर्चुअल डिवाइस के लिए, डिवाइस इंस्टेंसेस का उपयोग करने के बाद उन्हें हटा दिया जाता है ताकि प्रत्येक टेस्ट रन एक नए वर्चुअल डिवाइस इंस्टेंस का उपयोग करे।
टेस्ट लैब और Google Play सेवाएं
टेस्ट लैब डिवाइस आमतौर पर Google Play सेवाओं के एसडीके के नवीनतम संस्करण पर चलते हैं, लेकिन कुछ को एसडीके के नए संस्करण के जारी होने के बाद अपडेट करने के लिए कुछ दिनों की आवश्यकता हो सकती है। ध्यान दें कि आप कुछ उपकरणों के साथ संगतता समस्याओं का सामना कर सकते हैं।
परीक्षण उपकरणों को निजी बैकएंड सर्वर तक पहुंचने की अनुमति देना
परीक्षण के दौरान ठीक से काम करने के लिए कुछ मोबाइल ऐप्स को निजी बैकएंड सेवाओं के साथ संवाद करने की आवश्यकता होती है। यदि आपके बैकएंड सर्वर फ़ायरवॉल नियमों द्वारा सुरक्षित हैं, तो आप अपने फ़ायरवॉल के माध्यम से मार्ग खोलने के लिए नीचे दिए गए आईपी एड्रेस ब्लॉक का उपयोग करके टेस्ट लैब के भौतिक और आभासी उपकरणों तक पहुँच की अनुमति दे सकते हैं।
मोबाइल विज्ञापन
टेस्ट लैब एक स्केलेबल इन्फ्रास्ट्रक्चर प्रदान करता है जो ऐप परीक्षण को स्वचालित करता है, और दुर्भाग्य से, इस क्षमता का दुरुपयोग दुर्भावनापूर्ण ऐप द्वारा किया जा सकता है जो धोखाधड़ी वाले विज्ञापन राजस्व उत्पन्न करने के लिए डिज़ाइन किए गए हैं।
इस समस्या को कम करने के लिए:
यदि आप तृतीय-पक्ष डिजिटल विज्ञापन प्रदाताओं (उदाहरण के लिए, विज्ञापन नेटवर्क या मांग-पक्ष प्लेटफ़ॉर्म) का उपयोग करते हैं या उनके साथ काम करते हैं, तो आपको ऐप विकास और परीक्षण के दौरान वास्तविक विज्ञापनों के बजाय परीक्षण विज्ञापनों का उपयोग करने की सलाह दी जाती है।
यदि आपको अपने परीक्षण में वास्तविक विज्ञापनों का उपयोग करना है, तो उन डिजिटल विज्ञापन प्रदाताओं को सूचित करें जिनके साथ आप काम करते हैं और नीचे दिए गए आईपी एड्रेस ब्लॉक का उपयोग करके टेस्ट लैब से उत्पन्न राजस्व और सभी संबंधित ट्रैफ़िक को फ़िल्टर करते हैं। आपको Google के स्वामित्व वाले विज्ञापन प्रदाताओं को सूचित करने की आवश्यकता नहीं है; टेस्ट लैब आपके लिए इसका ख्याल रखती है।
टेस्ट लैब उपकरणों द्वारा उपयोग किए जाने वाले आईपी पते
टेस्ट लैब उपकरणों द्वारा उत्पन्न सभी नेटवर्क ट्रैफ़िक निम्नलिखित आईपी एड्रेस ब्लॉक से उत्पन्न होते हैं। आप gcloud CLI में gcloud beta firebase test ip-blocks list
कमांड का उपयोग करके भी इस सूची तक पहुँच सकते हैं। सूची को वर्ष में औसतन एक बार अद्यतन किया जाता है।
प्लेटफ़ॉर्म और डिवाइस प्रकार | सीआईडीआर आईपी एड्रेस ब्लॉक |
---|---|
Android और iOS भौतिक उपकरण | 70.32.128.0/19 (02-2022 जोड़ा गया) 108.177.6.0/23 108.177.18.192/26 (02-2022 जोड़ा गया) 108.177.29.64/27 (02-2022 को विस्तारित) 108.177.31.160/27 (02-2022 जोड़ा गया) 199.36.156.8/29 (02-2022 जोड़ा गया) 199.36.156.16/28 (02-2022 जोड़ा गया) 209.85.131.0/27 (02-2022 जोड़ा गया) 2001:4860:1008::/48 (02-2022 जोड़ा गया) 2001:4860:1018::/48 (02-2022 जोड़ा गया) 2001:4860:1019::/48 (02-2022 जोड़ा गया) 2001:4860:1020::/48 (02-2022 जोड़ा गया) 2001:4860:1022::/48 (02-2022 जोड़ा गया) |
एंड्रॉइड वर्चुअल डिवाइस | 34.68.194.64/29 (11-2019 को जोड़ा गया) 34.69.234.64/29 (11-2019 को जोड़ा गया) 34.73.34.72/29 (11-2019 को जोड़ा गया) 34.73.178.72/29 (11-2019 को जोड़ा गया) 34.74.10.72/29 (02-2022 जोड़ा गया) 34.136.2.136/29 (02-2022 जोड़ा गया) 34.136.50.136/29 (02-2022 जोड़ा गया) 34.145.234.144/29 (02-2022 जोड़ा गया) 35.192.160.56/29 35.196.166.80/29 35.196.169.240/29 35.203.128.0/28 35.234.176.160/28 35.243.2.0/27 (7-2019 जोड़ा गया) 35.245.243.240/29 (02-2022 जोड़ा गया) 199.192.115.0/30 199.192.115.8/30 199.192.115.16/29 |
डिवाइस आईपी-ब्लॉक का अब उपयोग नहीं किया जा रहा है | 74.125.122.32/29 (02-2022 को हटाया गया) 216.239.44.24/29 (02-2022 को हटाया गया) |