DragonCrawl: A Generative, Intent-Based Framework for Scalable Mobile End-to-End Testing
DragonCrawl एक AI-संचालित, इंटेंट-आधारित मोबाइल टेस्टिंग फ्रेमवर्क है जो GPT-4o की मल्टीमॉडल क्षमताओं का लाभ उठाकर उच्च पास रेट प्राप्त करने, टेस्ट ऑनबोर्डिंग समय को नाटकीय रूप से कम करने और CI/CD पाइपलाइनों में विशिष्ट यूजर फ्लो को वैलिडेट करके मेंटेनेंस ओवरहेड को समाप्त करने के लिए बनाया गया है, जिससे पारंपरिक एंड-टू-एंड टेस्टिंग की स्केलेबिलिटी और भंगुरता (brittleness) की सीमाओं को दूर किया जा सके।
मूल पेपर CC BY 4.0 (http://creativecommons.org/licenses/by/4.0/) के तहत लाइसेंस किया गया है। नीचे दिए गए पेपर की यह व्याख्या AI से तैयार की गई है। इसे लेखकों ने न तो लिखा है, न इसका समर्थन किया है। तकनीकी सटीकता के लिए मूल पेपर देखें। पूरा डिस्क्लेमर पढ़ें
कल्पना कीजिए कि आप कांच और रोशनी से बने एक विशाल, निरंतर बदलते शहर का निर्माण कर रहे हैं। हर दिन, वास्तुकार नए टॉवर जोड़ते हैं, चित्रकार खिड़कियों के रंग बदलते हैं, और इंजीनियर दरवाजे बदल देते हैं। यह शहर एक मोबाइल ऐप है, और वहां रहने वाले लोग इसके लाखों उपयोगकर्ता हैं। यह सुनिश्चित करने के लिए कि शहर ढह न जाए, आपको हर सड़क पर चलना होगा, हर दरवाजा खोलना होगा और हर खिड़की की जांच करनी होगी कि क्या वह अभी भी काम कर रही है। इसे "टेस्टिंग" कहा जाता है। लेकिन समस्या यह है कि शहर इतनी तेजी से बदलता है कि जब तक आप एक सड़क की जांच पूरी करते हैं, वास्तुकार उसे पहले ही फिर से बना चुके होते हैं। यदि आप हर एक दरवाजे के लिए एक सख्त, रोबोटिक चेकलिस्ट लिखने की कोशिश करते हैं, तो जिस क्षण एक चित्रकार दरवाजे का हैंडल बदल देता है, आपकी चेकलिस्ट टूट जाती है और आपको इसे फिर से शुरू से लिखना पड़ता है। यह पारंपरिक ऐप टेस्टिंग का दुःस्वप्न है: यह धीमा, नाजुक और टूटी हुई चेकलिस्ट को ठीक करने के लिए लोगों की सेनाओं की आवश्यकता वाला काम है।
यहाँ एक "AI जासूस" का विचार आता है। एक ऐसे रोबट के बजाय जो केवल यह जानता है कि दरवाजे का हैंडल कहाँ होना चाहिए, एक ऐसे जासूस की कल्पना करें जो यह समझता है कि दरवाजे का हैंडल किस काम आता है। यदि हैंडल अपनी जगह से हिल जाता है, तो जासूस घबराता नहीं है; वह बस उस चीज़ को ढूंढ लेता है जो दरवाजा खोलती है और आगे बढ़ जाता है। इंजीनियरों द्वारा लिखा गया यह पेपर, जिसे DragonCrawl कहा जाता है, इसी तरह का एक नया सिस्टम पेश करता है। यह एक सुपर-स्मार्ट आर्टिफिशियल इंटेलिजेंस (एक लार्ज लैंग्वेज मॉडल) का उपयोग करता है जो उस जासूस की तरह काम करता है। एक कठोर मानचित्र को याद रखने के बजाय, DragonCrawl ऐप को वैसे ही पढ़ता है जैसे एक इंसान पढ़ता है: यह स्क्रीन को देखता है, लक्ष्य को समझता है (जैसे "राइड बुक करना") और अपने आप अगला कदम तय करता है। यह पेपर दिखाता है कि यह दृष्टिकोण बहुत तेज़, सस्ता और ऐप में बदलाव होने पर टूटने की संभावना कम रखता है, जिससे कंपनी को अपने ऐप को अपडेट करने के हर बार हजारों अलग-अलग परिदृश्यों को स्वचालित रूप से टेस्ट करने की अनुमति मिलती है।
पुराना तरीका बनाम नया तरीका
DragonCrawl से पहले, Uber ने DragonCrawl V1 नामक एक विधि का उपयोग किया था। इसे एक ऐसे छात्र की तरह समझें जो रास्ते की एक अकेली फोटो को याद करके भूलभुलैया सुलझाने की कोशिश कर रहा है। यदि भूलभुलैया बिल्कुल उस फोटो जैसी दिखती, तो छात्र चल सकता था। लेकिन अगर दीवारें थोड़ी भी हिल जातीं, या यदि छात्र ने भूलभुलैया के अलग-अलग हिस्सों में एक ही गलियारा दो बार देखा होता, तो वह भ्रमित हो जाता और गोल-गोल घूमता। यह सिस्टम सरल कार्यों के लिए ठीक था, लेकिन जटिल कार्यों के लिए यह पूरी तरह विफल रहा। यह एक स्थिर मानचित्र को देखकर शहर में रास्ता खोजने जैसा था; जैसे ही शहर बढ़ा, वह मानचित्र बेकार हो गया।
नया संस्करण, DragonCrawl V2, पूरी तरह से गेम-चेंजर है। एक स्थिर मानचित्र के बजाय, यह एक "जेनेरेटिव" मस्तिष्क का उपयोग करता है। एक ऐसे टूर गाइड की कल्पना करें जो कभी आपके शहर में नहीं आया है लेकिन जानता है कि शहर कैसे काम करते हैं। आप गाइड को बताते हैं, "मैं एयरपोर्ट जाना चाहता हूँ," और वे वर्तमान सड़क, ट्रैफिक संकेतों और आसपास के लोगों को देखते हैं और निर्णय लेते हैं, "ठीक है, मैं यहाँ से बाईं ओर मुड़ूँगा।" यदि सड़क के संकेत बदल जाते हैं, तो गाइड रुकता नहीं है; वह बस नए संकेतों को देखता है और आगे बढ़ता रहता है। DragonCrawl V2 इसी तरह काम करता है। यह केवल चित्रों का मिलान नहीं करता; यह लक्ष्य और वर्तमान स्थिति के आधार पर अगले कदम के बारे में तर्क करता है।
यह वास्तव में कैसे काम करता है
यह सिस्टम कुछ चतुर युक्तियों पर बना है जो इसे लगभग मानवीय महसूस कराती हैं:
- इन्टेंट-आधारित मस्तिष्क (The Intent-Based Brain): एक स्क्रिप्ट के बजाय जो कहती है "बटन A पर क्लिक करें, फिर बटन B पर क्लिक करें," इंजीनियर एक सरल वाक्य लिखते हैं: "डाउनटाउन से एयरपोर्ट तक की राइड बुक करें।" AI इस लक्ष्य को पढ़ता है और फिर स्क्रीन को देखता है। वह खुद से पूछता है, "मुझे एक मैप और एक 'कहाँ जाना है?' बॉक्स दिख रहा है। अपने लक्ष्य तक पहुँचने के लिए, मुझे बॉक्स पर टैप करना चाहिए।" वह यह सब चरण-दर-चरण करता है, और जो कुछ भी उसने अब तक किया है उसे याद रखता है, ताकि वह कभी भी लूप में न फंसे।
- विजुअल डिटेक्टिव (The Visual Detective): जब AI को लगता है कि उसने कार्य पूरा कर लिया है, तो वह केवल यह देखने के लिए कोड बॉक्स चेक नहीं करता कि कोई विशिष्ट शब्द दिखाई दिया या नहीं। इसके बजाय, वह स्क्रीन का एक "स्क्रीनशॉट" लेता है और एक सुपर-स्मार्ट AI (GPT-4o) से पूछता है, "क्या यह तस्वीर एक सफल राइड बुकिंग की तरह दिखती है?" AI छवि को देखता है, रसीद या पुष्टिकरण संदेश देखता है, और कहता है, "हाँ, हम पहुँच गए!" यह टूटना बहुत कठिन है क्योंकि इसे इस बात से फर्क नहीं पड़ता कि बटन हिल गया है या टेक्स्ट "Confirm" से बदलकर "Okay" हो गया है।
- टाइम ट्रैवलर (Tool Calling): कभी-ప్పుడు, किसी फीचर को टेस्ट करने के लिए, आपको एक नकली स्थिति सेट करने की आवश्यकता होती है। उदाहरण के लिए, यह टेस्ट करने के लिए कि क्या ड्राइवर को मंजूरी मिली है, आपको यह नाटक करना होगा कि ड्राइवर ने अभी अपना ID अपलोड किया है। पुराने दिनों में, यह एक बुरा सपना था। DragonCel Crawl अब ऐप के "बैकस्टेज" से सीधे बात कर सकता है। यह कह सकता है, "हे, मान लो इस ड्राइवर को अभी मंजूरी मिल गई है," और सिस्टम तुरंत स्थिति को बदल देता है ताकि टेस्ट जारी रह सके। यह एक निर्देशक की तरह है जो "कट!" चिल्लाता है और तुरंत अभिनेताओं के लिए दृश्य बदल देता है।
परिणाम: तेज़, स्मार्ट और सस्ता
पेपर में दिए गए आंकड़े काफी प्रभावशाली हैं। इस नए सिस्टम से पहले, एक सिंगल फीचर के लिए टेस्ट बनाने में इंजीनियरों को लगभग 96 से 120 घंटे (यानी हफ्तों का काम!) लगते थे। DragonCrawl V2 के साथ, वे 4 घंटे से भी कम में एक टेस्ट सेट कर सकते हैं। यह एक बहुत बड़ी बढ़त है।
चूंकि इसे सेटअप करना बहुत तेज़ है, टीम यह टेस्ट करने में सक्षम रही कि वे अपने टेस्टिंग को केवल 48 टेस्ट से बढ़ाकर 1,013 टेस्ट तक ले जा सकते हैं। वे हर बार कोड बदलने पर इन टेस्ट्स को स्वचालित रूप से चलाते हैं। यह सिस्टम अविश्वसनीय रूप से विश्वसनीय है: यह iPhone पर 91.6% और Android पर 92.2% बार सफल होता है। यह पुराने सिस्टम से एक बड़ी छलांग है, जो केवल 80% सरल टेस्ट में सफल होता था और जटिल कार्यों पर पूरी तरह विफल हो जाता था।
पेपर एक आश्चर्यजनक लाभ को भी उजागर करता है: लागत। भले ही एक सुपर-स्मार्ट AI का उपयोग करने के लिए हर सवाल के जवाब के लिए पैसे खर्च होते हैं, लेकिन यह सिस्टम वास्तव में कंपनी के लाखों बचा रहा है। इंसानों के हफ्तों के काम को ऑटोमेट करके, वे अनुमान लगाते हैं कि 27 डेवलपर वर्षों के प्रयास की बचत हो रही है। यह एक पूरे साल के लिए 27 अतिरिक्त लोगों के काम करने के बराबर है, सिर्फ AI को भारी काम करने देने से।
यह सभी के लिए क्यों मायने रखता है
आप सोच सकते हैं, "मुझे इससे क्या फर्क पड़ता कि कोई कंपनी अपने ऐप को बेहतर तरीके से टेस्ट करती है?" खैर, पिछली बार के बारे में सोचें जब आपने किसी ऐसे ऐप का उपयोग करने की कोशिश की थी जो बार-बार क्रैश हो रहा था या आपको कुछ खरीदने नहीं दे रहा था। ऐसा आमतौर पर इसलिए होता है क्योंकि ऐप बदल गया था, और टेस्ट ने गलती नहीं पकड़ी। DragonCrawl इसे रोकने में मदद करता है। यह सुनिश्चित करता है कि जब आप ऐप खोलते हैं, तो बटन काम करते हैं, भुगतान सफल होता है, और राइड बुक होती है, चाहे आप कोई भी भाषा बोलते हों या किसी भी शहर में हों।
पेपर यह भी नोट करता है कि काम करने वाले लोगों में एक बदलाव आया है। केवल एक स्क्रिप्ट का पालन करने वाले "क्लिकर्स" के बजाय, टेस्टर अब "कंडक्टर्स" बन रहे हैं जो AI को सोचना सिखाते हैं। वे टूटे हुए टेस्ट को ठीक करने में कम और नए फीचर्स बनाने में अधिक समय बिताते हैं। यह टेस्टिंग को एक उबाऊ, दोहराव वाले काम से एक रचनात्मक, रणनीतिक काम में बदल देता है।
सीमाएं और भविष्य
बेशक, पेपर इस बारे में ईमानदार है कि DragonCrawl अभी क्या नहीं कर सकता। यह एक बाहरी AI सेवा पर निर्भर है, जिसका अर्थ है कि यदि वह सेवा अपने नियम बदल देती है या बंद हो जाती है, तो टेस्टिंग रुक जाती है। इसमें चलाने के लिए पैसा भी लगता है, इसलिए छोटी कंपनियां अभी इसका खर्च नहीं उठा पाएंगी। और हालांकि यह एक पथ का पालन करने में बहुत अच्छा है, लेकिन यह परफेक्ट नहीं है; कभी-कभी यह इरादे से थोड़ा अलग रास्ता ले सकता है, हालांकि सिस्टम को इन गलतियों को पकड़ने के लिए डिज़ाइन किया गया है।
लेकिन मुख्य बात स्पष्ट है, ऐप्स को टेस्ट करने का पुराना तरीका—कठोर, नाजुक स्क्रिप्ट लिखना—अब एक दीवार से टकरा रहा है। ऐप्स बहुत जटिल हैं और बहुत तेज़ी से बदलते हैं। DragonChel Crawl दिखाता है कि पिक्सेल के बजाय इन्टेंट (इरादे) को समझने के लिए AI का उपयोग करके, हम एक ऐसा भविष्य बना सकते हैं जहाँ ऐप्स का अधिक गहनता से, अधिक तेज़ी से और कम सिरदर्द के साथ परीक्षण किया जा सके। यह केवल एक बेहतर टूल नहीं है; यह हमारे डिजिटल संसार को सही ढंग से चलाने के बारे में सोचने का एक नया तरीका है।
अपने क्षेत्र के पेपरों की भीड़ में उलझे हुए हैं?
आपके रिसर्च कीवर्ड से मेल खाने वाले सबसे नए और अलग सोच वाले पेपरों का रोज़ाना Digest पाएँ—तकनीकी सारांश के साथ, आपकी भाषा में।