Android ऐप्लिकेशन की अपने-आप जांच होने की सुविधा

इस गाइड में, Firebase कंसोल में App Distribution ऑटोमेटेड टेस्टर की सुविधा का इस्तेमाल करके, टेस्टर को बिल्ड अपने-आप डिस्ट्रिब्यूट करने का तरीका बताया गया है. ऑटोमेटेड टेस्टर की सुविधा, आपके ऐप्लिकेशन के लिए हमेशा तैयार और आसानी से इस्तेमाल किया जा सकने वाला एक स्मोकी टेस्टिंग टूल उपलब्ध कराती है.

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

अगर आपने पहले से ही ऐसा नहीं किया है, तो अपने Android प्रोजेक्ट में Firebase जोड़ें.

अगर Firebase के किसी दूसरे प्रॉडक्ट का इस्तेमाल नहीं किया जा रहा है, तो आपको सिर्फ़ एक प्रोजेक्ट बनाना होगा और अपना ऐप्लिकेशन रजिस्टर करना होगा. हालांकि, अगर आने वाले समय में आपको अन्य प्रॉडक्ट इस्तेमाल करने हैं, तो Firebase कंसोल का इस्तेमाल करके Firebase जोड़ें में दिए गए सभी चरणों को पूरा करना न भूलें.

जब आप टेस्टर को अपने ऐप्लिकेशन का रिलीज़ से पहले वाला वर्शन उपलब्ध कराने के लिए तैयार हों, तो अपनी सामान्य प्रोसेस का इस्तेमाल करके अपना APK बनाएं. आपको APK पर, डीबग पासकोड या ऐप्लिकेशन साइनिंग पासकोड से हस्ताक्षर करना होगा.

Firebase कंसोल का इस्तेमाल करके, अपने ऐप्लिकेशन को ऑटोमेटेड टेस्टर को डिस्ट्रिब्यूट करना

अपने ऐप्लिकेशन को ऑटोमेटेड टेस्टर को डिस्ट्रिब्यूट करने के लिए, Firebase कंसोल का इस्तेमाल करके अपनी APK फ़ाइल अपलोड करें:

  1. Firebase कंसोल का App Distribution पेज खोलें. जब कहा जाए, तब अपना Firebase प्रोजेक्ट चुनें.
  2. रिलीज़ पेज पर, ड्रॉप-डाउन मेन्यू से वह ऐप्लिकेशन चुनें जिसे आपको डिस्ट्रिब्यूट करना है.
  3. अपने ऐप्लिकेशन की APK फ़ाइल को अपलोड करने के लिए, उसे खींचकर कंसोल पर छोड़ें.
  4. अपलोड पूरा होने के बाद, टेस्टर या ग्रुप जोड़ें खोज बार में ऑटोमेटेड टेस्टर चुनें.
  5. अपने-आप चलने वाले टेस्ट को पसंद के मुताबिक बनाने के लिए, बदलाव करें आइकॉन पर क्लिक करें. इसके बाद, अपने-आप चलने वाले टेस्ट को पसंद के मुताबिक बनाएं डायलॉग में, पसंद के मुताबिक बनाने के विकल्प चुनें.
  6. (ज़रूरी नहीं) डिवाइस कॉन्फ़िगरेशन डायलॉग में, एपीआई लेवल, डिवाइस ओरिएंटेशन, और वह स्थानीय भाषा चुनें जो आपकी जांच की खास बातों के मुताबिक हो.
  7. (ज़रूरी नहीं) अगर आपके ऐप्लिकेशन के लिए लॉगिन क्रेडेंशियल की ज़रूरत है, तो टेस्ट के दौरान इस्तेमाल किए जा सकने वाले कस्टम उपयोगकर्ता नाम और पासवर्ड बनाने के लिए, लॉगिन क्रेडेंशियल ड्रॉप-डाउन मेन्यू पर क्लिक करें.
  8. डिस्ट्रिब्यूट करें पर क्लिक करें. अपने ऐप्लिकेशन के लिए, रिलीज़ नोट भी जोड़ा जा सकता है. हालांकि, ऐसा करना ज़रूरी नहीं है.

Firebase CLI का इस्तेमाल करके, अपने ऐप्लिकेशन को ऑटोमेटेड टेस्टर को डिस्ट्रिब्यूट करना

अपना ऐप्लिकेशन अपलोड करने और टेस्टर के साथ शेयर करने के लिए, appdistribution:distribute कमांड चलाएं. अपने डिस्ट्रिब्यूशन को ऑटोमेटेड टेस्टर की सुविधा के लिए कॉन्फ़िगर करने के लिए, इन पैरामीटर का इस्तेमाल करें:

appdistribution:distribute options
--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 CLI का इस्तेमाल शुरू करने और डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के अलग-अलग तरीकों के बारे में ज़्यादा जानने के लिए, Firebase CLI का इस्तेमाल करके टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें.

Gradle का इस्तेमाल करके, अपने ऐप्लिकेशन को ऑटोमेटेड टेस्टर तक पहुंचाना

कम से कम एक firebaseAppDistribution सेक्शन जोड़कर, App Distribution को कॉन्फ़िगर किया जा सकता है. साथ ही, ऑटोमेटेड टेस्टर की सुविधा के लिए डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के लिए, इन पैरामीटर का इस्तेमाल किया जा सकता है:

App Distribution पैरामीटर बनाना
testDevices या testDevicesFile

वे टेस्ट डिवाइस जिन पर आपको ऑटोमेटेड टेस्ट का इस्तेमाल करके बिल्ड डिस्ट्रिब्यूट करने हैं.

टेस्ट डिवाइसों की जानकारी, सेमीकोलन लगाकर अलग की गई सूची के तौर पर दी जा सकती है

testDevices="model=shiba, version=34, locale=en, orientation=portrait;model=b0q, version=33, locale=en, orientation=portrait"

इसके अलावा, किसी ऐसी फ़ाइल का पाथ भी दिया जा सकता है जिसमें डिवाइस की खास जानकारी को सेमीकोलन लगाकर अलग किया गया हो:

testDevicesFile="/path/to/testDevices.txt"
testUsername

ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए इस्तेमाल किया जाने वाला उपयोगकर्ता नाम.

testUsernameResource

उपयोगकर्ता नाम वाले फ़ील्ड का रिसॉर्स नेम, ताकि ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए इसका इस्तेमाल किया जा सके.

testPassword या testPasswordFile

ऑटोमेटेड टेस्ट के दौरान, अपने-आप लॉगिन करने के लिए इस्तेमाल किया जाने वाला पासवर्ड.

इसके अलावा, पासवर्ड वाली किसी साधारण टेक्स्ट फ़ाइल का पाथ भी दिया जा सकता है:

testPasswordFile="/path/to/testPassword.txt"
testPasswordResource

अपने-आप लॉगिन करने के लिए, पासवर्ड फ़ील्ड का संसाधन नाम. इसका इस्तेमाल ऑटोमेटेड टेस्ट के दौरान किया जाएगा.

testNonBlocking

ऑटोमेटेड टेस्ट को अलग-अलग चलाएं. अपने-आप होने वाले टेस्ट के नतीजे देखने के लिए, FireBase कंसोल पर जाएं.

Gradle का इस्तेमाल शुरू करने और डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के अलग-अलग तरीकों के बारे में ज़्यादा जानने के लिए, Gradle का इस्तेमाल करके टेस्टर को Android ऐप्लिकेशन उपलब्ध कराना लेख पढ़ें.

fastlane का इस्तेमाल करके, अपने ऐप्लिकेशन को ऑटोमेटेड टेस्टर को डिस्ट्रिब्यूट करना

./fastlane/Fastfile लेन में, firebase_app_distribution ब्लॉक जोड़ें. अपने डिस्ट्रिब्यूशन को ऑटोमेटेड टेस्टर की सुविधा के लिए कॉन्फ़िगर करने के लिए, इन पैरामीटर का इस्तेमाल करें:

firebase_app_distribution पैरामीटर
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 कंसोल पर जाएं.

fastlane का इस्तेमाल शुरू करने और डिस्ट्रिब्यूशन को कॉन्फ़िगर करने के अलग-अलग तरीकों के बारे में ज़्यादा जानने के लिए, fastlane का इस्तेमाल करके टेस्टर को Android ऐप्लिकेशन डिस्ट्रिब्यूट करना लेख पढ़ें.

अपने-आप क्रॉल होने वाले टेस्ट की स्थितियां

टेस्ट के नतीजों को समझने में आपकी मदद करने के लिए, अपने-आप होने वाली जांच के नतीजे टैब में, हर डिवाइस के लिए जांच से जुड़ी समस्याएं, ऐप्लिकेशन के स्क्रीनशॉट, और टेस्ट क्रॉल का वीडियो दिखता है. जांच की स्थिति, जांच के नतीजों वाले पेज पर देखी जा सकती है:

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