Catch up on everything announced at Firebase Summit, and learn how Firebase can help you accelerate app development and run your app with confidence. Learn More

iOS के लिए Firebase टेस्ट लैब के साथ शुरुआत करें

संग्रह की मदद से व्यवस्थित रहें अपनी प्राथमिकताओं के आधार पर, कॉन्टेंट को सेव करें और कैटगरी में बांटें.

फायरबेस टेस्ट लैब आपको कई प्रकार के उपकरणों और कॉन्फ़िगरेशन पर अपने ऐप का गुणवत्ता परीक्षण करने देता है। यह गाइड टेस्ट लैब की प्रमुख अवधारणाओं, आईओएस पेशकशों और परीक्षण शुरू करने के निर्देशों का अवलोकन प्रदान करती है।

टेस्ट लैब कोटा और मूल्य निर्धारण योजनाओं के बारे में जानकारी के लिए, उपयोग, कोटा और मूल्य निर्धारण देखें।

मुख्य अवधारणाएँ और शर्तें

जब आप अपने द्वारा चुने गए उपकरणों और कॉन्फ़िगरेशन के विरुद्ध परीक्षण या परीक्षण मामलों का एक सेट चलाते हैं, तो परीक्षण लैब आपके ऐप के विरुद्ध एक बैच में परीक्षण चलाता है, फिर परिणामों को एक परीक्षण मैट्रिक्स के रूप में प्रदर्शित करता है।

उपकरण × टेस्ट निष्पादन = टेस्ट मैट्रिक्स

उपकरण
एक भौतिक या आभासी उपकरण (केवल Android) जिस पर आप परीक्षण चलाते हैं, जैसे फ़ोन, टैबलेट या पहनने योग्य उपकरण। परीक्षण मैट्रिक्स में उपकरणों की पहचान डिवाइस मॉडल, ओएस संस्करण, स्क्रीन ओरिएंटेशन और लोकेल (भूगोल और भाषा सेटिंग्स के रूप में भी जाना जाता है) द्वारा की जाती है।
परीक्षण, परीक्षण निष्पादन
एक उपकरण पर चलाने के लिए एक परीक्षण (या परीक्षण मामलों का एक सेट)। आप प्रति उपकरण एक परीक्षण चला सकते हैं, या वैकल्पिक रूप से परीक्षण को विखंडित कर सकते हैं और इसके परीक्षण मामलों को विभिन्न उपकरणों पर चला सकते हैं।
टेस्ट मैट्रिक्स
आपके परीक्षण निष्पादन के लिए स्थितियाँ और परीक्षण परिणाम शामिल हैं। यदि मैट्रिक्स में कोई परीक्षण निष्पादन विफल हो जाता है, तो संपूर्ण मैट्रिक्स विफल हो जाता है।

चरण 1 : टेस्ट लैब में अपलोड करने के लिए अपना टेस्ट तैयार करें

आप टेस्ट लैब के साथ निम्न परीक्षण चला सकते हैं। ध्यान दें कि सभी प्रकार के परीक्षण भौतिक उपकरणों पर अधिकतम 45 मिनट तक चल सकते हैं, और कोई भी अनकहा अपवाद परीक्षण विफलता का कारण बनेगा।

  • XCTest (XCUITests सहित) : एक इकाई परीक्षण जिसे आपने XCTest फ्रेमवर्क का उपयोग करके लिखा है। टेस्ट लैब के साथ चलने के लिए XCTest को संशोधित करने के निर्देशों के लिए XCTest बनाएं पर जाएं।

  • गेम लूप टेस्ट : एक टेस्ट जो गेमिंग ऐप्स में खिलाड़ी की क्रियाओं को अनुकरण करने के लिए "डेमो मोड" का उपयोग करता है। यह सत्यापित करने का एक तेज़ और स्केलेबल तरीका है कि आपका गेम उपयोगकर्ताओं के लिए अच्छा प्रदर्शन करता है। जब आप गेम लूप टेस्ट चलाना चुनते हैं, तो आप यह कर सकते हैं:

    • अपने गेम इंजन के मूल परीक्षण लिखें।

    • अलग-अलग UI या टेस्टिंग फ्रेमवर्क के लिए एक ही कोड लिखने से बचें।

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

    टेस्ट लैब में अपना परीक्षण कैसे चलाना है, इस पर निर्देशों के लिए रन ए गेम लूप टेस्ट पर जाएं।

चरण 2 : अपना परीक्षण चलाने के लिए एक टूल चुनें

अपना परीक्षण चलाने के लिए आप निम्न टूल चुन सकते हैं:

  • फायरबेस कंसोल आपको एक ऐप अपलोड करने और कहीं से भी परीक्षण शुरू करने देता है। इस उपकरण का उपयोग करने के निर्देशों के लिए Firebase कंसोल के साथ परीक्षण देखें।

  • Gcloud कमांड लाइन इंटरफ़ेस (CLI) आपको कमांड लाइन से अंतःक्रियात्मक रूप से परीक्षण चलाने में सक्षम बनाता है, और आपके स्वचालित निर्माण और परीक्षण प्रक्रिया के भाग के रूप में स्क्रिप्टिंग के लिए भी उपयुक्त है। इस टूल का उपयोग करने के निर्देशों के लिए gcloud CLI के साथ परीक्षण देखें।

  • वास्तविक उपकरणों पर परीक्षण करने से पहले, यह सुनिश्चित करने के लिए सिम्युलेटर पर स्थानीय रूप से अपना परीक्षण चलाएँ कि यह अपेक्षित रूप से व्यवहार करता है। निर्देशों के लिए स्थानीय रूप से टेस्ट देखें।

चरण 3 : परीक्षण उपकरणों को निर्दिष्ट करें

टेस्ट लैब के साथ, आप Google डेटा सेंटर में होस्ट किए गए iOS डिवाइस और मॉडल की एक विस्तृत श्रृंखला पर अपने ऐप के विरुद्ध अपना परीक्षण चला सकते हैं। अधिक जानने के लिए, उपलब्ध डिवाइस देखें।

चरण 4 : परीक्षा परिणामों की समीक्षा करें

इस बात पर ध्यान दिए बिना कि आप अपने परीक्षण कैसे शुरू करते हैं, आपके सभी परीक्षण परिणाम टेस्ट लैब द्वारा प्रबंधित किए जाते हैं और इन्हें ऑनलाइन देखा जा सकता है।

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

कच्चे परीक्षण के परिणामों में परीक्षण लॉग और ऐप की विफलता का विवरण होता है, और यह स्वचालित रूप से Google क्लाउड बकेट में संग्रहीत होता है। यदि आप एक बकेट निर्दिष्ट करते हैं, तो आप भंडारण की लागत के लिए जिम्मेदार होंगे। यदि आप कोई बकेट निर्दिष्ट नहीं करते हैं, तो परीक्षण लैब आपके लिए नि:शुल्क एक बकेट बनाता है।

अधिक विवरण के लिए, फायरबेस टेस्ट लैब परिणामों का विश्लेषण देखें।

डिवाइस की सफाई

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

टेस्ट लैब द्वारा उपयोग किए जाने वाले वर्चुअल डिवाइस के लिए, डिवाइस इंस्टेंसेस का उपयोग करने के बाद उन्हें हटा दिया जाता है ताकि प्रत्येक टेस्ट रन एक नए वर्चुअल डिवाइस इंस्टेंस का उपयोग करे।


टेस्ट लैब उपकरणों को निजी बैकएंड सर्वर तक पहुंचने की अनुमति देना

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

मोबाइल विज्ञापन

टेस्ट लैब एक स्केलेबल इन्फ्रास्ट्रक्चर प्रदान करता है जो ऐप परीक्षण को स्वचालित करता है, और दुर्भाग्य से, इस क्षमता का दुरुपयोग दुर्भावनापूर्ण ऐप द्वारा किया जा सकता है जो धोखाधड़ी वाले विज्ञापन राजस्व उत्पन्न करने के लिए डिज़ाइन किए गए हैं।

इस समस्या को कम करने के लिए:

  • यदि आप तृतीय-पक्ष डिजिटल विज्ञापन प्रदाताओं (उदाहरण के लिए, विज्ञापन नेटवर्क या मांग-पक्ष प्लेटफ़ॉर्म) का उपयोग करते हैं या उनके साथ काम करते हैं, तो आपको ऐप विकास और परीक्षण के दौरान वास्तविक विज्ञापनों के बजाय परीक्षण विज्ञापनों का उपयोग करने की सलाह दी जाती है।

  • यदि आपको अपने परीक्षण में वास्तविक विज्ञापनों का उपयोग करना है, तो उन डिजिटल विज्ञापन प्रदाताओं को सूचित करें जिनके साथ आप काम करते हैं और नीचे दिए गए आईपी एड्रेस ब्लॉक का उपयोग करके टेस्ट लैब से उत्पन्न राजस्व और सभी संबंधित ट्रैफ़िक को फ़िल्टर करते हैं। आपको 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 को हटाया गया)