डैशबोर्ड हरे रंग में चमक रहा था। सभी स्मोक टेस्ट पास हो गए। AI असिस्टेंट ने नए टेस्ट केस जनरेट किए, पुराने को हटाया, और यहां तक कि मिनटों में रिपोर्ट किया कि टेस्टिंग कवरेज में कैसे सुधार हुआ है। टीम शुक्रवार को आत्मविश्वास के साथ लॉन्च की ओर बढ़ी।
अब, सोमवार की सुबह है।
सपोर्ट में टिकट हैं। वे ग्राहक जिनके सेव किए गए पते चेकआउट नहीं कर सके। उनके सेव किए गए पते कैसे टूट गए? एक सामान्य मोबाइल डिवाइस पर UI पूरी तरह से टूटा हुआ दिखता है। एक महत्वपूर्ण API में मजबूत एज केस हैंडलिंग नहीं थी। जब इन सभी मुद्दों को एक साथ लिया जाता है, तो वे एक बड़े खतरे की ओर इशारा करते हैं: एक टीम की बाहरी इनपुट पर आंख बंद करके भरोसा करने की इच्छा, यह मानते हुए कि सब कुछ सही है।
यही वास्तविक खतरा है जो AI, QA में लाता है।
यह नहीं है कि AI हमारे टेस्ट में बग्स लाएगा। सभी सॉफ्टवेयर में बग्स होते हैं। सभी QA टीमें उन्हें पहचानने और हल करने में अच्छी हैं। हालांकि, AI का बड़ा खतरा यह है कि यह एक टीम को यह विश्वास दिला सकता है कि उनकी टेस्टिंग संपूर्ण है, भले ही वह न हो। टेस्टिंग में AI के साथ, एक QA टीम को गलत आराम की भावना मिल सकती है कि सब कुछ सटीक है।
यह गलत आत्मविश्वास बहुत महंगा पड़ सकता है। यह अति आत्मविश्वास बड़ी वित्तीय देनदारियों का कारण बन सकता है। पूरी तरह से टेस्ट किए गए AI सिस्टम भी कभी-कभी वास्तविक दुनिया की जटिलताओं का सामना करने पर विफल हो सकते हैं। McDonald's ने हाल ही में एक IBM AI सिस्टम को बंद कर दिया जिसे वह अपने ड्राइव-थ्रू काउंटरों पर टेस्ट कर रहा था, जब यह बार-बार ऑर्डर में गलतियां करता रहा। यह एक याद दिलाता है कि भरोसेमंद तकनीकों में भी गंभीर खामियां हो सकती हैं।
असली समस्या तब होती है जब एक टीम को विश्वास हो जाता है कि टेस्ट ने किसी दिए गए सिस्टम को पर्याप्त रूप से टेस्ट कर लिया है। यह गलत सुरक्षा की भावना इस तथ्य से आती है कि संबंधित सुरक्षा जोखिमों की या तो खोज नहीं की गई है या उन्हें कठोरता से टेस्ट नहीं किया गया है।
यह पारंपरिक ऑटोमेशन विधियों में लंबे समय से एक मुद्दा रहा है। इन विधियों में, बड़ी संख्या में टेस्ट चलाए जा सकते हैं, लेकिन टेस्टिंग में ज्यादा गहराई नहीं होती। यह तथ्य कि एक पाइपलाइन रिपोर्ट कहती है कि सभी चेक पास हो गए हैं (सब हरा) इसका मतलब यह नहीं है कि सिस्टम स्वयं आवश्यक रूप से पूरी तरह से चालू होगा।
AI को लागू करते समय ऑटोमेशन और भी जटिल हो जाता है। AI भाषा मॉडल के बारे में जानने वाली एक बात यह है कि वे जानकारी को इस तरह प्रस्तुत कर सकते हैं जो सम्मोहक लगती है लेकिन वास्तव में भ्रामक होती है।
हम टेस्ट चलते हुए और यहां तक कि बेहतर टेस्ट कवरेज देख सकते हैं, क्योंकि AI टेस्ट निर्माण और किसी भी टेस्ट रन के परिणामों के विश्लेषण में सहायता करता है। यह सब फायदेमंद है।
लेकिन सभी लाभ पूरी तरह से विश्वसनीय नहीं हैं।
AI द्वारा निर्मित एक टेस्ट बिजनेस लॉजिक के किसी महत्वपूर्ण हिस्से को मिस कर सकता है। वैकल्पिक रूप से, इसे केवल सामान्य परिदृश्यों का टेस्ट करने के लिए डिज़ाइन किया जा सकता है। ऐसा टेस्ट पूरी तरह से पर्याप्त लगेगा। यदि परिणाम साफ हैं और स्पष्ट रूप से व्यक्त किए गए हैं, तो टीम संभवतः टेस्ट को पर्याप्त मानेगी, गंभीर खामियों को बिना खोजे छोड़ देगी।
इसलिए टेस्ट अक्सर टीमों के लिए गलत धारणाएं बनाने के अवसर पैदा कर सकते हैं।
आज, कृत्रिम बुद्धिमत्ता का उपयोग करके स्वचालित सॉफ्टवेयर टेस्ट में शामिल किसी के लिए अधिक महत्वपूर्ण सवाल यह नहीं होना चाहिए कि "क्या AI अधिक कुशलता से टेस्ट बनाता है?" बल्कि, यह होना चाहिए "क्या AI द्वारा निर्मित टेस्ट वास्तव में विश्वसनीय हैं?"
एक खराब मैनुअल टेस्ट को जल्दी से पहचाना जा सकता है। स्क्रिप्टेड टेस्ट जो ठीक से नहीं लिखे गए हैं, अक्सर गलतियां करते हैं।
लेकिन जब आर्टिफिशियल इंटेलिजेंस (AI) द्वारा बनाए गए टेस्ट विफल होते हैं, तो यह एक नजर में बताना मुश्किल है। वे ऐसे दावे कर सकते हैं जो बहुत सटीक लगते हैं, और नाम और परिदृश्य जो यथार्थवादी लगते हैं। लेकिन वे चुपचाप सबसे महत्वपूर्ण कारकों को छोड़ सकते हैं। वे किसी फीचर के सही उद्देश्य की गलत व्याख्या कर सकते हैं। वे एक ही विचार को अलग तरीके से प्रस्तुत कर सकते हैं। AI पर्याप्त सबूत के बिना एक सॉफ्टवेयर रिलीज के बारे में अति आत्मविश्वास से भरी रिपोर्ट भी बना सकता है।
यह बाहर से दिखने वाली सहजता और अंदर की गुणवत्ता के बीच एक खतरनाक अंतर पैदा करता है।
गुणवत्ता आश्वासन (QA) में, हमारा आत्मविश्वास टेस्ट की ट्रेसेबिलिटी, कवरेज की गहराई, जोखिम मूल्यांकन और अवलोकन योग्य परिणामों से आना चाहिए। AI द्वारा उत्पादित डेटा देखने में कितना सुंदर है, इससे नहीं।
प्रोग्रामर आर्टिफिशियल इंटेलिजेंस के लिए घर पर कंप्यूटर का उपयोग कर रहा है। Freepikcomputing स्व-शिक्षण एल्गोरिदम के माध्यम से मानव मस्तिष्क का अनुकरण कर रहा है। डेस्कटॉप PC पर AI डीप न्यूरल नेटवर्क के साथ काम करने वाला कर्मचारी, कैमरा A
AI वहां उत्कृष्ट होता है जहां नियमित पैटर्न होते हैं। इसलिए, यह आसानी से सामान्य प्रवाह, अपेक्षित इनपुट और सामान्य उपयोगकर्ता व्यवहार की ओर आकर्षित होता है।
लेकिन गंभीर सॉफ्टवेयर दोष अक्सर अन्य स्थानों में छिपे होते हैं:
यदि AI द्वारा जनरेट किए गए टेस्ट केवल उन सामान्य परिदृश्यों का अनुसरण करते हैं जो एक प्रोडक्ट डिज़ाइनर द्वारा कल्पना की गई हैं, तो वे जोखिम भरे रास्तों को अछूता छोड़ देंगे। यह केवल यह भ्रम पैदा करने का काम करता है कि टेस्ट पूर्ण हैं।
टेस्ट का वास्तविक मूल्य यह है कि यह सॉफ्टवेयर के बारे में क्या साबित करता है। बहुत सारे भयानक टेस्ट एप्लिकेशन पर कार्यों के एक विशाल दायरे को कवर करते हैं, लेकिन यह ठीक से जांच नहीं करते कि क्या ये कार्य बिजनेस के लिए सफल होते हैं। एक टेस्ट बस एक मूवमेंट है जहां यह केवल बटन क्लिक करता है, फील्ड भरता है, अधिक बटन क्लिक करता है, स्क्रीन देखता है, और कुछ पॉप अप होता देखता है।
AI इस तरह के हल्के स्वचालित टेस्ट को एक मानव की तुलना में बहुत तेजी से निष्पादित कर सकता है। हालांकि, यदि आपकी टेस्ट शर्तें (दावे) बहुत सामान्य, खराब परिभाषित, या बिजनेस उपयोग के मामले के लिए अप्रासंगिक हैं, तो केवल एक टेस्ट पास निष्पादित करना एक सॉफ्टवेयर रिलीज के लिए बहुत अधिक सुरक्षा प्रदान नहीं करता। एक चेकआउट में एक टेस्ट पास केवल एक सफलता बैनर दिखा सकता है और यह सुनिश्चित नहीं करता कि एक ऑर्डर सही ढंग से संसाधित किया गया है (टैक्स, कुल, आदि), कि एक ईमेल भेजा गया है, या इन्वेंटरी कम हो गई है।
एक टीम हाथ से लिखे गए 40 टेस्ट केस की जांच कर सकती है। लेकिन वे 400 के लिए समान दृष्टिकोण नहीं अपना सकते जो AI का उपयोग करके जल्दी से बनाए गए थे। यह AI-आधारित गुणवत्ता आश्वासन (QA) के सबसे बड़े नुकसानों में से एक है: सावधानीपूर्वक टेस्टिंग स्वाभाविक रूप से घट जाती है क्योंकि संख्या बढ़ती है।
अधिक टेस्ट केस होने से हमें एक प्रकार का मनोवैज्ञानिक आत्मविश्वास मिल सकता है। जब संख्या बढ़ती है, तो हमें लगता है कि टेस्ट सूट बहुत व्यापक है और रिपोर्ट त्रुटिहीन हैं। लेकिन टेस्ट केस की संख्या बढ़ाना कभी भी उनकी गुणवत्ता का विकल्प नहीं है।
उचित जोखिम मैपिंग और आवश्यकताओं की ट्रेसेबिलिटी के बिना, AI केवल सिस्टम की सही गुणवत्ता की जांच करने के बजाय अनुमानों को रिकॉर्ड करने में मदद करेगा।
जब पाइपलाइन रिपोर्ट हमेशा हरा दिखाती है, तो यह टीमों को आत्मविश्वास की एक मजबूत भावना देती है और त्वरित निर्णयों को प्रोत्साहित करती है। यह काम पूरा करने में बाधाओं को दूर करती है, इसलिए यह सुरक्षा की भावना आसानी से फैलती है क्योंकि टीमें AI का उपयोग करके अपने स्वयं के टेस्ट का निर्माण, सुधार और प्राथमिकता देना शुरू करती हैं। उनकी प्रवृत्ति परिणामों की जांच और सत्यापन से बदलकर केवल सिस्टम पर आंख बंद करके भरोसा करने में बदल जाती है। सतह पर, यह मामूली लगता है, लेकिन यह QA संस्कृति को हमेशा के लिए बदल सकता है। सवाल यह नहीं रहता कि "यह टेस्ट किस जोखिम को कवर करता है?" और बन जाता है "क्या AI ने इसके लिए एक टेस्ट चलाया?" इस बिंदु पर, लोग मान लेते हैं कि सब कुछ ठीक है और गुणवत्ता पर सवाल करना बंद कर देते हैं।
आधुनिक AI सिस्टम की सबसे खतरनाक विशेषताओं में से एक यह है कि वे सबसे स्पष्ट गलतियों को भी बड़ी प्रामाणिकता के साथ प्रस्तुत कर सकते हैं। यह गुणवत्ता आश्वासन (QA) में बहुत महत्वपूर्ण है।
भले ही एक AI टेस्ट एक आवश्यकता की गलतफहमी या अधूरी जानकारी के साथ लिखा गया हो, इसका आउटपुट बहुत सटीक और पॉलिश होगा ताकि ऐसा लगे कि यह सही तरीके से लिखा गया था। एक विशिष्ट टेस्ट गलती को जल्दी से खोजने में सक्षम नहीं होगा। यहां खतरा न केवल गलती ही में है, बल्कि इसमें भी है कि गलती को कितनी आसानी से विश्वास दिलाया जा सकता है।
एक स्पष्ट गलती को जल्दी से ठीक किया जा सकता है। लेकिन एक गलत निष्कर्ष जो विश्वसनीय लगता है, उसे बिना टेस्ट किए जारी किए जाने की संभावना है।
इसका मतलब यह नहीं है कि AI से पूरी तरह बचना चाहिए।
समाधान इसका उपयोग करना है बिना अपने निर्णय को AI को सौंपे। सर्वश्रेष्ठ गुणवत्ता आश्वासन (QA) टीमें AI को एक सहायक के रूप में देखती हैं, न कि कुछ ऐसा जिस पर आंख बंद करके भरोसा किया जाए। जबकि वे गति बढ़ाने के लिए इसका उपयोग करते हैं, वे इसे अंतिम विश्वास नहीं देते। यानी, वे एक कार्य शैली का पालन करते हैं जहां वे AI द्वारा प्रदान किए गए आउटपुट पर केवल सत्यापन के बाद भरोसा करते हैं।
देखते हैं कि यह व्यवहार में कैसे काम करता है।
टेस्ट केस बनाने से पहले, आपको उन मुख्य समस्याओं को स्पष्ट रूप से परिभाषित करना चाहिए जो बिजनेस या उपयोगकर्ता को प्रभावित कर सकती हैं।
वित्तीय लेन-देन, कानूनी मामलों (अनुपालन), पहचान, अनुमतियों, और ग्राहक विश्वास से संबंधित क्षेत्रों पर सबसे पहले ध्यान देना चाहिए। वे त्रुटियां क्या हैं जो बहुत कम होती हैं लेकिन बहुत नुकसान पहुंचाती हैं? त्रुटियां कहां आसानी से किसी का ध्यान नहीं जाती?
AI ऐसे क्षेत्रों में नए विचार प्रदान कर सकता है। लेकिन यह मनुष्यों पर निर्भर है कि अधिक जोखिम कहां हैं।
AI द्वारा जनरेट किए गए टेस्ट केस में प्रत्येक स्टेप पहली नजर में सही लग सकता है। लेकिन असली सवाल यह है कि क्या टेस्ट वास्तव में सही परिणाम का टेस्ट कर रहा है।
टेस्टिंग करते समय एक सरल आदत विकसित करना अच्छा विचार है: इस बात पर अधिक ध्यान केंद्रित करें कि टेस्ट क्या साबित करता है, इस बात से कि यह कैसे काम करता है।
टेस्टिंग की एक ही परत अकेले यह गारंटी नहीं दे सकती कि सिस्टम पूर्ण है। यूनिट टेस्टिंग, API, इंटीग्रेशन, एंड-टू-एंड (E2E), एक्सप्लोरेटरी टेस्टिंग, और प्रोडक्शन फीडबैक सभी विभिन्न प्रकार के जोखिमों को उजागर करते हैं।
यदि AI केवल एक परत का टेस्ट करता है, तो टीमों को यह नहीं मानना चाहिए कि उनका सिस्टम पूरी तरह से सुरक्षित है। प्रत्येक परत का अपने महत्व के साथ टेस्ट किया जाना चाहिए।
कई लोगों को डर है कि टेस्टिंग में AI एक मानव-रहित प्रयास बन जाएगा। लेकिन वास्तविकता में, इसके विपरीत हो रहा है।
जैसे-जैसे AI दोहराए जाने वाले कार्यों को संभालता है, मानव हस्तक्षेप अधिक मूल्यवान हो जाता है। जोखिमों की पहचान करना, अस्पष्टताओं को दूर करना, धारणाओं पर सवाल उठाना, जटिल एज केस का टेस्ट करना, और पूछना "क्या सिस्टम सुरक्षित है क्योंकि एक टेस्ट पास हो गया?" यह सब मानव बुद्धि की आवश्यकता है।
यह कम काम के बारे में नहीं है, बल्कि बेहतर गुणवत्ता के बारे में है। भविष्य की सर्वश्रेष्ठ टीमें वे नहीं हैं जो अनगिनत टेस्ट बनाती हैं। वे वे हैं जो तेजी से और सावधानी से काम कर सकती हैं, लेकिन जहां आवश्यक हो वहां सवाल करती हैं।
क्योंकि सिस्टम में बग हमेशा दिखाई देते हैं। लेकिन अति आत्मविश्वास अक्सर हमें उन्हें अनदेखा करने के लिए प्रेरित करता है।
AI निश्चित रूप से QA प्रक्रियाओं को तेज कर सकता है। यह टीमों को टेस्ट बनाने, दोहराए जाने वाले कार्यों को कम करने, और परिवर्तनों के लिए अधिक तेजी से प्रतिक्रिया देने में मदद कर सकता है।
लेकिन यह बिना निगरानी वाली गति एक नए प्रकार की गुणवत्ता समस्या का कारण बन सकती है। जब AI द्वारा जनरेट किए गए टेस्ट हमें पूर्ण महसूस कराते हैं, जब चमकदार डैशबोर्ड हमें उन पर विश्वास दिलाते हैं, जब फैंसी रिपोर्ट कठोर मूल्यांकन से पहले आती हैं, तो QA वास्तव में मजबूत नहीं है। इसके बजाय, यह आसानी से मूर्ख बन जाता है।
सबसे सुरक्षित टीमें वे हैं जो इस सरल तथ्य को याद रखती हैं कि केवल इसलिए कि एक टेस्ट पास होता है, यह सिस्टम के सुरक्षित होने का पूर्ण प्रमाण नहीं है। यह केवल एक संकेत है, और मानव बुद्धिमत्ता का उपयोग अभी भी उस संकेत का मूल्यांकन करने के लिए करने की आवश्यकता है।
तो, वास्तविक खतरा जो AI, QA के लिए प्रस्तुत करता है, वह बग नहीं है। बल्कि, यह वह गलत आत्मविश्वास है जो यह देता है।


