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

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

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

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

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

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

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

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

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

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

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

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

अगले चरण