रोबो स्क्रिप्ट चलाना (iOS+)

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

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

रोबो स्क्रिप्ट के ये फ़ायदे हैं, जो टेस्टिंग के पारंपरिक फ़्रेमवर्क के मुकाबले बेहतर हैं:

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

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

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

हमारा सुझाव है कि आप जब भी हो सके, रोबो स्क्रिप्ट का इस्तेमाल करें. ऐसा इसलिए, क्योंकि इन्हें आसानी से मैनेज किया जा सकता है. उदाहरण के लिए, रोबो स्क्रिप्ट का इस्तेमाल करके ये काम किए जा सकते हैं:

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

इन कामों के लिए, रोबो स्क्रिप्ट की ज़्यादा बेहतर सुविधाओं का इस्तेमाल करें:

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

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

अगले चरण