Firebase सीएलआई का इस्तेमाल करके, टेस्टर को बिल्ड उपलब्ध कराए जा सकते हैं. सीएलआई टूल की मदद से, किसी बिल्ड के लिए टेस्टर और रिलीज़ नोट तय किए जा सकते हैं. साथ ही, बिल्ड को उसी हिसाब से डिस्ट्रिब्यूट किया जा सकता है.
टेस्टर को अपना ऐप्लिकेशन उपलब्ध कराने के लिए, Firebase सीएलआई का इस्तेमाल करके IPA फ़ाइल अपलोड करें:
- Firebase सीएलआई को इंस्टॉल करें या उसके सबसे नए वर्शन पर अपडेट करें (हमारा सुझाव है कि आप अपने ओएस के हिसाब से सीएलआई के लिए स्टैंडअलोन बाइनरी डाउनलोड करें). साइन इन करें और देखें कि आपके पास अपने प्रोजेक्ट ऐक्सेस करने का ऐक्सेस है या नहीं.
- Firebase कंसोल के App Distribution पेज पर, वह ऐप्लिकेशन चुनें जिसे आपको डिस्ट्रिब्यूट करना है. इसके बाद, शुरू करें पर क्लिक करें.
-
अपना ऐप्लिकेशन अपलोड करने और टेस्टर के साथ शेयर करने के लिए,
appdistribution:distribute
कमांड चलाएं. डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के लिए, इन पैरामीटर का इस्तेमाल करें:appdistribution:distribute options --app
ज़रूरी है: आपके ऐप्लिकेशन का Firebase ऐप्लिकेशन आईडी. ऐप्लिकेशन आईडी, Firebase कंसोल में सामान्य सेटिंग पेज पर देखा जा सकता है.
--app 1:1234567890:ios:0a1b2c3d4e5f67890
--token
Firebase सीएलआई की मदद से अपने सीआई एनवायरमेंट की पुष्टि करने पर प्रिंट किया जाने वाला रीफ़्रेश टोकन. ज़्यादा जानकारी के लिए, सीआई सिस्टम के साथ सीएलआई का इस्तेमाल करना पढ़ें.
--token "$FIREBASE_TOKEN"
--release-notes
--release-notes-file
इस बिल्ड के लिए रिलीज़ नोट.
रिलीज़ नोट को सीधे तौर पर इनमें से किसी एक तरीके से बताया जा सकता है:
--release-notes "Text of release notes"
इसके अलावा, किसी सादे टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है:
--release-notes-file "/path/to/release-notes.txt"
--testers
--testers-file
उन टेस्टर के ईमेल पते जिन्हें आपको न्योता भेजना है.
टेस्टर के ईमेल पतों की सूची, कॉमा लगाकर अलग की जा सकती है:
--testers "ali@example.com, bri@example.com, cal@example.com"
इसके अलावा, कॉमा लगाकर अलग किए गए ईमेल पतों की सूची वाली किसी प्लैन टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है:
--testers-file "/path/to/testers.txt"
--groups
--groups-file
टेस्टर के वे ग्रुप जिन्हें आपको न्योता देना है (टेस्टर मैनेज करें देखें). ग्रुप को
ग्रुप के उपनाम का इस्तेमाल करके दिखाया जाता है. इन उपनामों को Firebase कंसोल में देखा जा सकता है.ग्रुप को कॉमा लगाकर अलग की गई सूची के तौर पर बताया जा सकता है:
--groups "qa-team, trusted-testers"
इसके अलावा, किसी ऐसी प्लैन टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है जिसमें ग्रुप के नामों की सूची, कॉमा लगाकर अलग की गई हो:
--groups-file "/path/to/groups.txt"
--debug
यह एक फ़्लैग है, जिसे लॉग आउट को ज़्यादा जानकारी के साथ प्रिंट करने के लिए शामिल किया जा सकता है.
--test-devices
--test-devices-file
यहां दिए गए डिस्ट्रिब्यूशन टाइप, ऑटोमेटेड टेस्टर की बीटा सुविधा का हिस्सा हैं.
वे टेस्ट डिवाइस जिन पर आपको बिल्ड डिस्ट्रिब्यूट करने हैं (ऑटोमेटेड टेस्ट देखें).
टेस्टर के ईमेल पतों की सूची, कॉमा लगाकर अलग की जा सकती है:
--test-devices: "model=shiba,version=34,locale=en,orientation=portrait;model=b0q,version=33,locale=en,orientation=portrait"
इसके अलावा, किसी ऐसी प्लैन टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है जिसमें जांच के लिए इस्तेमाल किए जाने वाले डिवाइसों की सूची, सेमीकोलन से अलग की गई हो:
--test-devices-file: "/path/to/test-devices.txt"
--test-username
ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए उपयोगकर्ता का नाम.
--test-password
--test-password-file
ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए इस्तेमाल किया जाने वाला पासवर्ड.
इसके अलावा, पासवर्ड वाली किसी साधारण टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है:
--test-password-file: "/path/to/test-password.txt"
--test-username-resource
उपयोगकर्ता नाम वाले फ़ील्ड का रिसॉर्स नेम, ताकि ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए इसका इस्तेमाल किया जा सके.
--test-password-resource
अपने-आप लॉगिन करने के लिए, पासवर्ड फ़ील्ड का रिसॉर्स नेम. इसका इस्तेमाल ऑटोमेटेड टेस्ट के दौरान किया जाएगा.
--test-non-blocking
अपने-आप चलने वाले टेस्ट को अलग-अलग चलाएं. अपने-आप होने वाली जांच के नतीजे देखने के लिए, Firebase कंसोल पर जाएं.
उदाहरण के लिए:
firebase appdistribution:distribute test.ipa \ --app 1:1234567890:ios:0a1b2c3d4e5f67890 \ --release-notes "Bug fixes and improvements" --testers-file testers.txt
रिलीज़ अपलोड होने के बाद, Firebase CLI ये लिंक दिखाता है. इन लिंक की मदद से, बाइनरी को मैनेज किया जा सकता है. साथ ही, यह पक्का किया जा सकता है कि टेस्टर और दूसरे डेवलपर के पास सही रिलीज़ हो:
firebase_console_uri
- किसी एक रिलीज़ को दिखाने वाले Firebase कंसोल का लिंक. इस लिंक को अपने संगठन के अन्य डेवलपर के साथ शेयर किया जा सकता है.testing_uri
- टेस्टर के अनुभव में रिलीज़ का लिंक (iOS वेब क्लिप) इससे टेस्टर, रिलीज़ के नोट देख सकते हैं और अपने डिवाइस पर ऐप्लिकेशन इंस्टॉल कर सकते हैं. लिंक का इस्तेमाल करने के लिए, टेस्टर के पास रिलीज़ का ऐक्सेस होना चाहिए.binary_download_uri
- यह एक ऐसा लिंक होता है जिस पर हस्ताक्षर किया गया हो. यह लिंक, ऐप्लिकेशन बाइनरी (IPA फ़ाइल) को सीधे डाउनलोड और इंस्टॉल करता है. लिंक एक घंटे बाद काम नहीं करेगा.
टेस्टर और ग्रुप मैनेज करना
रिलीज़ डिस्ट्रिब्यूट करने के अलावा,
appdistribution:testers:add
औरappdistribution:testers:remove
का इस्तेमाल करके, नए टेस्टर को न्योता भेजा जा सकता है या अपने Firebase प्रोजेक्ट से मौजूदा टेस्टर को हटाया जा सकता है.किसी टेस्टर को अपने Firebase प्रोजेक्ट में जोड़ने के बाद, उसे अलग-अलग रिलीज़ में जोड़ा जा सकता है. किसी टेस्टर को हटाने के बाद, उसके पास आपके प्रोजेक्ट की रिलीज़ का ऐक्सेस नहीं रहेगा. ध्यान दें कि हाल ही में हटाए गए टेस्टर के पास, अब भी कुछ समय के लिए आपकी रिलीज़ का ऐक्सेस रहेगा.
उदाहरण के लिए:
firebase appdistribution:testers:add anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove anothertester@email.com moretesters@email.com
टेस्टर के ईमेल पतों को स्पेस से अलग किया जाना चाहिए.
--file /path/to/testers.txt
का इस्तेमाल करके भी टेस्टर की जानकारी दी जा सकती है.अगर आपके पास टेस्टर की संख्या ज़्यादा है, तो आपको ग्रुप का इस्तेमाल करना चाहिए: अपने Firebase प्रोजेक्ट में ग्रुप बनाने या मिटाने के लिए,
appdistribution:group:create
औरappdistribution:group:delete
का इस्तेमाल किया जा सकता है.appdistribution:testers:add
औरappdistribution:testers:remove
निर्देशों के लिए कोई ग्रुप तय करने के लिए,--group-alias
का इस्तेमाल करें.उदाहरण के लिए:
firebase appdistribution:group:create "QA team" qa-team
firebase appdistribution:testers:add --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:testers:remove --group-alias=qa-team anothertester@email.com moretesters@email.com
firebase appdistribution:group:delete qa-team
अपना बिल्ड डिस्ट्रिब्यूट करने के बाद, वह Firebase कंसोल के App Distribution डैशबोर्ड में 150 दिनों (पांच महीने) तक उपलब्ध रहता है. जब बिल्ड की समयसीमा खत्म होने में 30 दिन बचे हों, तो समयसीमा खत्म होने की सूचना, कंसोल और टेस्टर के टेस्ट डिवाइस पर, बिल्ड की सूची, दोनों में दिखती है.
जिन टेस्टर को ऐप्लिकेशन की जांच करने का न्योता नहीं मिला है उन्हें जांच शुरू करने के लिए ईमेल से न्योते मिलते हैं. साथ ही, मौजूदा टेस्टर को ईमेल से सूचनाएं मिलती हैं कि नया बिल्ड जांच के लिए तैयार है. टेस्ट ऐप्लिकेशन इंस्टॉल करने का तरीका जानने के लिए, टेस्टर के तौर पर सेट अप करना लेख पढ़ें. Firebase कंसोल में जाकर, हर टेस्टर की स्थिति पर नज़र रखी जा सकती है. जैसे, उन्होंने न्योता स्वीकार किया है या नहीं और उन्होंने ऐप्लिकेशन डाउनलोड किया है या नहीं.
टेस्टर के पास, ऐप्लिकेशन की जांच करने का न्योता स्वीकार करने के लिए 30 दिन होते हैं. इसके बाद, न्योता खत्म हो जाता है. न्योते की समयसीमा खत्म होने के पांच दिन पहले, Firebase कंसोल में रिलीज़ के बगल में, समयसीमा खत्म होने की सूचना दिखती है. टेस्टर की लाइन में मौजूद ड्रॉप-डाउन मेन्यू का इस्तेमाल करके, न्योता फिर से भेजकर उसे रिन्यू किया जा सकता है.
अगले चरण
मैन्युअल तरीके से या प्रोग्राम के ज़रिए ज़्यादा डिवाइसों को रजिस्टर करने के लिए, ज़्यादा iOS डिवाइसों को रजिस्टर करना लेख पढ़ें.
CI/CD और fastlane का इस्तेमाल करके, Apple ऐप्लिकेशन को क्यूए टेस्टर को डिस्ट्रिब्यूट करने के सबसे सही तरीके जानें.