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

CI/CD और फास्टलेन का उपयोग करके QA परीक्षकों को Apple ऐप्स वितरित करने के सर्वोत्तम अभ्यास

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

यह दस्तावेज़ आपके Apple प्लेटफ़ॉर्म प्री-रिलीज़ टेस्टिंग वर्कफ़्लो को CI/CD वातावरण में टिकाऊ और दोहराने योग्य बनाने के लिए Firebase ऐप डिस्ट्रीब्यूशन और फास्टलेन का उपयोग करने के लिए सर्वोत्तम प्रथाओं का परिचय देता है। जबकि यह दस्तावेज़ फास्टलेन पर केंद्रित है, हम आपको अधिक लचीलापन देने के लिए फायरबेस कंसोल, फायरबेस सीएलआई और सार्वजनिक फायरबेस ऐप डिस्ट्रीब्यूशन एपीआई के माध्यम से उपलब्ध समाधानों का भी वर्णन करते हैं। हम रिलीज और टेस्टर की सीमाओं का भी वर्णन करते हैं ताकि आप इष्टतम अनुभव के लिए पहले से योजना बना सकें।

यदि आप भी Android का उपयोग कर रहे हैं, तो CI/CD का उपयोग करके QA परीक्षकों को Android ऐप्स वितरित करने के सर्वोत्तम अभ्यास देखें।

शुरू करने से पहले

इससे पहले कि आप इस दस्तावेज़ में सर्वोत्तम अभ्यासों को लागू करें, प्रत्येक ऐप के लिए Firebase कंसोल में ऐप वितरण को सक्षम करना सुनिश्चित करें। यदि आपने ऐप वितरण सक्षम नहीं किया है, तो आपको 404 त्रुटि मिलेगी।

ऐप वितरण को सक्षम करने के लिए, इन चरणों का पालन करें:

  1. फायरबेस कंसोल में ऐप डिस्ट्रीब्यूशन पेज खोलें।

  2. अपना आईओएस ऐप चुनें।

  3. प्रारंभ करें क्लिक करें .

CI/CD का उपयोग करके अपने रिलीज़-पूर्व परीक्षण कार्यप्रवाह को स्वचालित करें

यदि आप अपने परीक्षकों के लिए ऐप्स बनाना और रिलीज़ करना स्वचालित करना चाहते हैं और आप CI/CD का उपयोग कर रहे हैं, तो हम अनुशंसा करते हैं कि आप फ़ास्टलेन का उपयोग करें. एक अन्य विकल्प फायरबेस सीएलआई का उपयोग करना है, जो आपको फायरबेस उत्पादों की एक विस्तृत श्रृंखला तक पहुंचने देता है।

फास्टलेन का प्रयोग करें

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

ऐप वितरण को फास्टलेन के साथ एकीकृत करने का तरीका जानने के लिए, फास्टलेन का उपयोग करके परीक्षकों को आईओएस ऐप वितरित करें देखें। एक कोडलैब भी देखें जो फास्टलेन एकीकरण प्रक्रिया के माध्यम से आपका मार्गदर्शन करता है।

फायरबेस सीएलआई का प्रयोग करें

प्रोग्राम के रूप में परीक्षकों को बिल्ड वितरित करने के लिए ऐप वितरण द्वारा प्रदान किए जाने वाले फायरबेस सीएलआई टूल का उपयोग करें। आप किसी बिल्ड के लिए परीक्षक और रिलीज़ नोट निर्दिष्ट कर सकते हैं.

ऐप की फायरबेस ऐप आईडी निर्दिष्ट करके, वैकल्पिक रूप से रिलीज़ नोट और परीक्षकों के ईमेल वाली फ़ाइल जोड़कर अपना नवीनतम iOS बिल्ड test.ipa वितरित करें:

firebase appdistribution:distribute test.ipa  \
    --app 1:1234567890:ios:0a1b2c3d4e5f67890  \
    --release-notes "Bug fixes and improvements" --testers-file testers.txt

अपने बिल्ड को स्वचालित करने के लिए Firebase CLI का उपयोग करने के बारे में अधिक जानने के लिए, Firebase CLI का उपयोग करके परीक्षकों को iOS ऐप्स वितरित करें देखें।

प्रमाणित करने के लिए सेवा क्रेडेंशियल्स का उपयोग करें

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

यदि आप वर्कलोड आइडेंटिटी फ़ेडरेशन का उपयोग कर रहे हैं, तो आप सेवा खाता कुंजी के बजाय क्रेडेंशियल कॉन्फ़िगरेशन फ़ाइल जनरेट और उपयोग कर सकते हैं।

रिलीज़ लिमिट को ध्यान में रखें

ऐप वितरण प्रति ऐप अधिकतम 1,000 रिलीज़ का समर्थन करता है। इसका मतलब यह है कि जब आप रिलीज़ की सीमा पार कर जाते हैं, तो ऐप डिस्ट्रीब्यूशन सीमा से ऊपर की सबसे पुरानी रिलीज़ को अपने आप हटा देता है। रिलीज़ की सीमाओं को प्रबंधित करने का तरीका जानने के लिए, ऐप रिलीज़ कितने समय के लिए उपलब्ध हैं?

एकाधिक रिलीज में परीक्षकों का एक ही सेट जोड़ें

यदि आप अपनी रिलीज़ में बड़ी संख्या में परीक्षक जोड़ना चाहते हैं, तो ऐप वितरण की बल्क परीक्षक प्रबंधन कार्यक्षमता का उपयोग करें।

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

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

परीक्षक की सीमा का ध्यान रखें

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

प्रबंधित करें और स्वचालित रूप से नए iOS परीक्षक उपकरण जोड़ें

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

UDIDs को स्वचालित रूप से नीचे खींचने, उन्हें Apple डेवलपर कंसोल में जोड़ने और फिर ऐप को फिर से बनाने और इसे वितरित करने वाली फास्टलेन कार्रवाई को सेट करने का तरीका जानने के लिए, ऐप वितरण और फास्टलेन के साथ अपने रिलीज़-पूर्व iOS बिल्ड को तेज़ी से वितरित करें देखें

संभावित परीक्षकों को परीक्षण के लिए स्व-पंजीकरण करने में सक्षम करें

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

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

हम अनुशंसा करते हैं कि आप किसी समूह के लिए एक आमंत्रण लिंक बनाएं. कोई भी परीक्षक जो आमंत्रण लिंक का उपयोग करके साइन अप करता है, स्वचालित रूप से बाद के रिलीज़ में जुड़ जाता है।

अधिक जानने के लिए, आमंत्रण लिंक बनाएं और समूह से परीक्षकों को जोड़ें और निकालें देखें।

सुनिश्चित करें कि परीक्षक उस संस्करण का परीक्षण कर रहे हैं जिसकी आपको परवाह है

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

  • रिलीज़ लिंक: जब आप परीक्षकों के साथ एक विशिष्ट संस्करण साझा करना चाहते हैं तो इस सुविधा का उपयोग करें। रिलीज़ लिंक का उपयोग करने का तरीका जानने के लिए, Firebase कंसोल का उपयोग करके परीक्षकों को iOS ऐप्लिकेशन वितरित करें देखें. ये लिंक हमारे फायरबेस और फास्टलेन कमांड-लाइन (सीएलआई) टूल्स के साथ आपके बिल्ड ऑटोमेशन टूल्स के साथ भी उपलब्ध हैं।

  • इन-ऐप अलर्ट: इन अलर्ट का उपयोग तब करें जब आप यह सुनिश्चित करना चाहते हैं कि आपके परीक्षक आपके ऐप के नवीनतम संस्करण का परीक्षण कर रहे हैं। Firebase ऐप डिस्ट्रीब्यूशन iOS SDK को एकीकृत करके, आप अपने ऐप के नए बिल्ड उपलब्ध होने पर सीधे ऐप के अंदर अपने परीक्षकों को अलर्ट प्रदर्शित कर सकते हैं। ऐप्लिकेशन के अंतर्गत अलर्ट जोड़ने का तरीका जानने के लिए, परीक्षकों को नए बिल्ड के बारे में सूचित करें देखें.

कंपनी छोड़ने वाले परीक्षकों के लिए स्वचालित रूप से पहुंच हटा दें

एक बार जब आपका CI/CD आंतरिक परीक्षण प्रवाह चालू हो जाता है और चल रहा होता है, तो आपको यह सुनिश्चित करने की आवश्यकता होती है कि कंपनी छोड़ने वाले लोगों की आपके आंतरिक बिल्ड तक पहुंच नहीं है। बिल्ड के लिए टेस्टर एक्सेस को प्रबंधित करने में आपकी मदद करने के लिए, ऐप वितरण निम्नलिखित विकल्प प्रदान करता है: