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