रोबो टेस्ट चलाना (Android)

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

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

रोबो टेस्ट की सामान्य जांच के अलावा, रोबो स्क्रिप्ट का इस्तेमाल करके अपनी जांच को पसंद के मुताबिक बनाया जा सकता है. रोबो स्क्रिप्ट, रोबो टेस्ट की एक सुविधा है. ज़्यादा जानने के लिए, रोबो स्क्रिप्ट चलाना लेख पढ़ें.

अगर आपको iOS+ के लिए रोबो का बीटा वर्शन आज़माना है, तो रोबो टेस्ट चलाना लेख पढ़ें.

रोबो टेस्ट के क्रॉल करने के बारे में आंकड़े

रोबो टेस्ट के नतीजों को समझने में आपकी मदद करने के लिए, रोबो टेस्ट हर जांच के दौरान आंकड़े रिकॉर्ड करता है. Test Lab रोबो टेस्ट के टैब में सबसे ऊपर आंकड़े दिखाता है यह टैब, जांच के नतीजों वाले पेज पर मौजूद होता है:

  • कार्रवाइयां: क्रॉल के दौरान की गई कार्रवाइयों की कुल संख्या. इसमें रोबो स्क्रिप्ट की कार्रवाइयां, मंकी ऐक्शन, और रोबो के निर्देश शामिल हैं.

  • गतिविधियां: क्रॉल के दौरान कवर की गई अलग-अलग गतिविधियों की संख्या.

  • स्क्रीन: क्रॉल के दौरान देखी गई अलग-अलग स्क्रीन की संख्या.

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

रोबो टेस्ट का टाइम आउट

आपके ऐप्लिकेशन के यूआई की जटिलता के आधार पर, रोबो टेस्ट को यूआई के इंटरैक्शन के सेट को पूरी तरह से पूरा करने में पांच मिनट या उससे ज़्यादा समय लग सकता है. हमारा सुझाव है कि ज़्यादातर ऐप्लिकेशन के लिए, टेस्ट का टाइम आउट कम से कम 120 सेकंड (दो मिनट) और सामान्य तौर पर जटिल ऐप्लिकेशन के लिए 300 सेकंड (पांच मिनट) सेट करें. Android Studio और Firebase कंसोल से चलाए जाने वाले टेस्ट के लिए, टाइम आउट की डिफ़ॉल्ट वैल्यू 300 सेकंड (पांच मिनट) होती है. वहीं, gcloud कमांड लाइन से चलाए जाने वाले टेस्ट के लिए, यह वैल्यू 900 सेकंड (15 मिनट) होती है.

ऐप्लिकेशन के स्टार्टअप में टाइम आउट से जुड़ी गड़बड़ियां

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

रोबो स्क्रिप्ट की मदद से ज़्यादा कंट्रोल

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

रोबो टेस्ट और Android के अलावा अन्य यूआई विजेट

रोबो टेस्ट, Android API का इस्तेमाल करके, Android के यूआई विजेट पर सीधे कार्रवाइयां करता है. इससे टेस्ट, आपके यूआई की जांच अपने-आप कर पाते हैं. हालांकि, इसका मतलब यह भी है कि उन्हें किसी स्क्रीन पर टेस्ट चलाने के लिए, Android के यूआई की क्रम-वार जानकारी को एक्सट्रैक्ट करना होगा.

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

Android के यूआई विजेट का इस्तेमाल न करने वाली स्क्रीन की बेहतर तरीके से जांच करने के लिए, स्क्रिप्ट किए गए टैप और इंटरैक्शन के सेट से, मंकी ऐक्शन के मनमाने टैप को बदला जा सकता है through Firebase Test Lab गेम लूप टेस्ट.

Google Play के साथ इंटिग्रेशन

अल्फ़ा या बीटा चैनल का इस्तेमाल करके, अपने ऐप्लिकेशन की APK फ़ाइल अपलोड और पब्लिश करते समय, Google Play Console में रोबो टेस्ट का इस्तेमाल किया जा सकता है. रोबो टेस्ट, अलग-अलग भौगोलिक जगहों के लोकप्रिय डिवाइसों के सेट पर चलता है. इससे, अलग-अलग फ़ॉर्म फ़ैक्टर और हार्डवेयर कॉन्फ़िगरेशन के लिए टेस्ट कवरेज मिलता है. ज़्यादा जानने के लिए, समस्याओं का पता लगाने के लिए लॉन्च से पहले की रिपोर्ट का इस्तेमाल करना लेख पढ़ें.

टेस्ट खाते में साइन इन करना और पहले से तय टेक्स्ट इनपुट करना

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

साइन-इन करें

रोबो टेस्ट में, साइन इन करने के लिए दो ऐसे तरीके हैं जिनका एक साथ इस्तेमाल नहीं किया जा सकता:

  • पसंद के मुताबिक साइन इन करना: अगर टेस्ट खाते के क्रेडेंशियल दिए जाते हैं, तो आपको रोबो टेस्ट को यह बताना होगा कि उन्हें कहां डालना है. साथ ही, आपको वे क्रेडेंशियल भी देने होंगे.

  • अपने-आप साइन इन होना: अगर पसंद के मुताबिक साइन इन करने के लिए, टेस्ट खाते के क्रेडेंशियल नहीं दिए जाते हैं, तो अपने-आप साइन इन होने की सुविधा का इस्तेमाल किया जाता है. रोबो टेस्ट, Google के टेस्ट खाते का इस्तेमाल करके, Android के स्टैंडर्ड विजेट या Compose ऐप्लिकेशन से बने ऐप्लिकेशन में अपने-आप साइन इन कर सकता है.

पसंद के मुताबिक साइन इन करने के लिए, टेस्ट खाते के क्रेडेंशियल देने के लिए, यह तरीका अपनाएं:

  1. डाइमेंशन चुनें पेज पर, अन्य विकल्प चुनें.

  2. टेस्ट खाते के क्रेडेंशियल (ज़रूरी नहीं) में, उपयोगकर्ता नाम और पासवर्ड के रिसॉर्स के नाम और टेस्ट खाते के लिए उपयोगकर्ता नाम और पासवर्ड डालें.

पहले से तय टेक्स्ट इनपुट करना

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

  1. डाइमेंशन चुनें पेज पर, अन्य विकल्प चुनें.

  2. अन्य फ़ील्ड (ज़रूरी नहीं) में, एक या उससे ज़्यादा रिसॉर्स के नाम और उनसे जुड़े टेक्स्ट फ़ील्ड में डालने के लिए स्ट्रिंग डालें.

पहले से तय टेक्स्ट इनपुट {:#predefined-text} से जुड़ी गड़बड़ियां

रोबो टेस्ट, EditText फ़ील्ड को Android के ऐसे रिसॉर्स के नाम से खोजता है जो दिए गए रेगुलर एक्सप्रेशन से मेल खाता हो. अगर रोबो को मेल खाने वाला फ़ील्ड नहीं मिलता है, तो वह आपका टेक्स्ट इनपुट नहीं करता. हालांकि, वह सामान्य तरीके से क्रॉल करना जारी रखता है.

आपके पास, जांच के लिए अपने ऐप्लिकेशन के तीन डीप लिंक देने का विकल्प होता है. डीप लिंक, आपके ऐप्लिकेशन को Android के ACTION_VIEW इंटेंट के तौर पर जारी किए जाते हैं. इसलिए, हर लिंक आपके ऐप्लिकेशन में मौजूद किसी इंटेंट फ़िल्टर से मेल खाना चाहिए.

अगर एक या उससे ज़्यादा डीप लिंक दिए जाते हैं, तो ऐप्लिकेशन को पहले सामान्य तरीके से (यानी, ACTION_MAIN इंटेंट का इस्तेमाल करके) लॉन्च किया जाता है. इसके बाद, तय किए गए टाइम आउट तक उसे क्रॉल किया जाता है. मुख्य क्रॉल के बाद, हर डीप लिंक को 30 सेकंड के लिए क्रॉल किया जाता है.

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

ऐप्लिकेशन के लिए लाइसेंस की प्रोसेस की सुविधा

Test Lab Google Play की ओर से दी जाने वाली ऐप्लिकेशन लाइसेंसिंग सेवा का इस्तेमाल करने वाले ऐप्लिकेशन के साथ काम करता है. Test Lab की मदद से अपने ऐप्लिकेशन की जांच करते समय, लाइसेंसिंग की जांच करने के लिए, आपको अपने ऐप्लिकेशन को Play Store के प्रोडक्शन चैनल पर पब्लिश करना होगा.Test Lab Test Lab का इस्तेमाल करके, अपने ऐप्लिकेशन की जांच अल्फ़ा या बीटा चैनल में करने के लिए, Test Lab पर अपना ऐप्लिकेशन अपलोड करने से पहले, लाइसेंसिंग की जांच करने की सुविधा हटाएं.Test Lab

अगले चरण

  • रोबो स्क्रिप्ट का इस्तेमाल करके, अपनी जांच को पसंद के मुताबिक बनाएं.