एकाइहरू
1. सफ्टवेयर परीक्षण र QA मा कृत्रिम बुद्धिमत्ताको परिचय: भूमिका, सीमा, नकली जोखिम, र प्रमाणीकरण 2. परीक्षण परिदृश्य र परीक्षण केस जेनेरेसन: आवश्यकता देखि व्यापक नियन्त्रण सम्म 3. अन्वेषण परीक्षण र परीक्षण आइडिया जेनेरेसन: एआईसँग क्रिएटिभ बग हन्टिङ 4. UI परीक्षण स्वचालन: AI को साथ सेलेनियम, प्लेराइट र साइप्रस कोड उत्पन्न गर्दै 5. एपीआई परीक्षण स्वचालन: एआईसँग सम्झौता, योजना र अन्त-देखि-अन्त प्रमाणीकरण 6. एकाइ परीक्षण उत्पादन र परीक्षण योग्यता: एआईसँग बलियो परीक्षण 7. त्रुटि रिपोर्ट लेखन र प्राथमिकता: स्पष्ट, AI संग पुन: उत्पादन योग्य रेकर्डहरू 8. परीक्षण कभरेज विश्लेषण र जोखिम-आधारित परीक्षण: AI संग सही लक्ष्य 9. प्रतिगमन परीक्षण, परीक्षण मर्मत, र कमजोर परीक्षणहरू लड्न 10. गलत-विश्वास जोखिम, परीक्षण गुणस्तर, र उत्परिवर्तन परीक्षण: परीक्षण परीक्षण 11. अन्त-देखि-अन्त कार्यप्रवाह, CI/CD एकीकरण, नैतिकता र सुरक्षा: जिम्मेवारीपूर्वक एआई प्रयोग गर्दै
एकाइ 4 / 11

UI परीक्षण स्वचालन: AI को साथ सेलेनियम, प्लेराइट र साइप्रस कोड उत्पन्न गर्दै

लाभ:

  • कृत्रिम बुद्धिमत्ताको साथ बलियो UI परीक्षण कोड उत्पादन गर्ने क्षमता, डेटा-टेस्टिड, खुला प्रतीक्षा, र वास्तविक प्रयोगकर्ता परिणाम प्रमाणित गर्ने दाबी सहित।
  • कमजोर परीक्षणहरू (खराब चयनकर्ता, अन्धा पर्खाइ) जोगिने क्षमता र पृष्ठ वस्तु मोडेल संरचनामा कायम राख्न सजिलो परीक्षणहरू
  • कोड तोडेर उत्पादन गरिएको प्रत्येक UI परीक्षण परीक्षण गर्ने क्षमता र नक्कली पास गरिएका परीक्षणहरू पत्ता लगाउने र समाधान गर्ने क्षमता

प्रत्येक क्लिक, प्रत्येक फारम भर्नुहोस्, प्रयोगकर्ताले ब्राउजरमा गरेको प्रत्येक पृष्ठ संक्रमण हातले बारम्बार परीक्षण गर्न सकिँदैन — त्यसैले UI परीक्षण स्वचालन (प्रयोगकर्ता इन्टरफेस; यी परीक्षणहरूले वास्तविक ब्राउजर चलाएर प्रयोगकर्ता व्यवहारको नक्कल गर्ने) अवस्थित छ। सेलेनियम, नाटककार र साइप्रस यस कामको लागि सबैभन्दा सामान्य उपकरणहरू हुन्। आर्टिफिसियल इन्टेलिजेन्स (एआई) यी उपकरणहरूको लागि कोड लेख्न अत्यधिक कुशल छ: तपाईंले परीक्षण केसको वर्णन गर्नुहुन्छ, एआईले तपाईंलाई कार्ययोग्य स्वचालन लिपिको मस्यौदा दिन्छ। तर यहाँ यस मोड्युलको केन्द्रीय चेतावनी फेरि खेलमा आउँछ: UI परीक्षण कोड जुन AI ले उत्पादन गर्छ अक्सर कमजोर परीक्षणहरू हुन सक्छ जुन "हरियो उज्यालो तर गलत कुरा प्रमाणित गर्नुहोस्" वा हावामा फ्ल्याप। तपाईंको काम यो कोड चलाउनु होइन, तर यसले वास्तवमा सही कुरालाई बलियो रूपमा प्रमाणित गर्छ भनी सुनिश्चित गर्नु हो।

यस इकाईमा, हामी एआईसँग बलियो, मर्मतयोग्य र साँच्चै मान्य हुने UI परीक्षणहरू उत्पादन गर्ने लक्ष्य राख्छौं; तपाईंले कमजोर परीक्षणहरूबाट बच्न सिक्नुहुनेछ।

ठोस UI परीक्षणको तीन स्तम्भहरू

1. सही तत्व लोकेटर। एक परीक्षणले पृष्ठमा तत्व फेला पार्न चयनकर्ता प्रयोग गर्दछ। AI ले प्रायः भंगुर चयनकर्ताहरू उत्पादन गर्छ: लामो XPath पथहरू (पृष्ठ संरचनामा अत्यधिक निर्भर ठेगाना), CSS वर्ग नामहरूमा आधारित चयनकर्ताहरू (डिजाइन परिवर्तन हुँदा ब्रेक)। बलियो तरिका भनेको डेटा-टेस्टिड जस्ता स्थिर विशेषताहरू हो जुन विकासकर्ताले परीक्षणको लागि थपेको छ। स्पष्ट रूपमा AI मा यो लागू गर्नुहोस्।

2. स्पष्ट प्रतीक्षा। UI परीक्षणमा जोखिमको नम्बर एक स्रोत समय हो। निरन्तर निद्रा (३) (अन्धो पर्खाइ) खराब अभ्यास हो: कहिलेकाहीँ यो पर्याप्त हुँदैन, कहिलेकाहीँ यसले समय बर्बाद गर्दछ। सही तरिका भनेको स्पष्ट पर्खाइ प्रयोग गर्नु हो, जसले "यो तत्व नदेखिएसम्म पर्खनुहोस्" भन्छ। नाटककारले यो धेरै हदसम्म स्वचालित रूपमा गर्छ; सेलेनियममा तपाईंले स्पष्ट रूपमा अनुरोध गर्नुपर्छ।

3. अर्थपूर्ण दावी। परीक्षणले प्रयोगकर्ताले वास्तवमा देख्ने नतिजा प्रमाणित गर्नुपर्छ — जस्तै "स्क्रिनमा अर्डर नम्बर देखा पर्‍यो", "पृष्ठ लोड भएको" मात्र होइन। यदि एआई द्वारा उत्पादित परीक्षणमा दावी छैन वा महत्वहीन छ भने, त्यो परीक्षणले छद्म-पास (पहिलो एकाई) उत्पादन गर्दछ।

सावधानी: जब तपाइँ पहिलो पटक एआई-उत्पन्न UI परीक्षण देख्नुहुन्छ, तीनवटा कुराहरू जाँच गर्नुहोस्: के चयनकर्ताहरू प्रतिबद्ध छन् (डेटा-टेस्टिड), पर्खिरहेका छन् (कुनै अन्धा निद्रा छैन), र के दावीले वास्तविक प्रयोगकर्ता परिणाम प्रमाणित गर्छ? यदि यी तीन ठीक छन् भने, परीक्षण सम्भवतः ठोस छ।

पृष्ठ वस्तु मोडेल

परीक्षणहरू बढ्दै जाँदा, प्रत्येक परीक्षण भित्र चयनकर्ताहरू लेख्नु मर्मतसम्भार दुःस्वप्न बन्छ। पृष्ठ वस्तु मोडेल (POM - डिजाइन ढाँचा जसले चयनकर्ताहरू र प्रत्येक पृष्ठ/स्क्रिनका लागि कार्यहरूलाई एकल वर्गमा सङ्कलन गर्दछ) चयनकर्तालाई एक ठाउँमा राख्छ; जब इन्टरफेस परिवर्तन हुन्छ, तपाइँ यसलाई एकल फाइलमा अपडेट गर्नुहुन्छ। AI लाई प्रत्यक्ष रूपमा भन्दा POM संरचनामा परीक्षणहरू उत्पादन गराउनुहोस्; यसले मर्मतलाई मौलिक रूपमा सजिलो बनाउँछ।

कमजोर प्रम्प्ट / बलियो प्रम्प्ट

कमजोर: "लगइन पृष्ठको लागि सेलेनियम परीक्षण लेख्नुहोस्।"
बलियो: "Playwright (TypeScript) सँग लगइन प्रवाह परीक्षण लेख्नुहोस्। चयनकर्ताहरूले केवल डेटा-टेस्टिड प्रयोग गर्छन्; प्रयोगकर्ताले के देख्छन् भन्ने नियन्त्रण प्रयोग नगर्नुहोस्, पृष्ठ शीर्षक होइन।"

शक्तिशाली प्रम्प्ट; उपकरणले भाषा, चयनकर्ता नीति, प्रतीक्षा रणनीति, वास्तुकला (POM) र अभिव्यक्त दाबी अपेक्षा दिन्छ।

परीक्षण डाटा र वातावरण स्वतन्त्रता

एक ठोस UI परीक्षण सही रूपमा लेखिएको मात्र होइन, तर यसको आफ्नै परीक्षण डेटा निर्माण र सफा पनि गर्दछ। AI-उत्पन्न परीक्षणहरू प्रायः प्रयोगकर्ता वा रेकर्डसँग लिङ्क हुन्छन् जुन वातावरणमा पहिले नै अवस्थित छ भनेर मानिन्छ ("प्रशासक प्रयोगकर्ताको रूपमा लग इन गर्नुहोस्")। यो धारणा तोडिन्छ जब परीक्षण अर्को वातावरणमा चल्छ वा अर्को परीक्षण पछि (एकाइ 9 मा अर्डर निर्भरता समस्या)। सत्य यो हो कि प्रत्येक परीक्षणले परीक्षणको सुरुमा आवश्यक डेटा सिर्जना गर्दछ (वा यसलाई API कलको साथ तयार गर्दछ) र अन्त्यमा सफा गर्दछ। स्पष्ट रूपमा AI लाई निर्देशन दिनुहोस् "कुनै पनि डेटा सेटअप गर्नुहोस् जुन यो परीक्षण परीक्षण भित्र निर्भर हुन्छ; बाहिरबाट तयार-निर्मित डाटा नमान्नुहोस्।"

अर्को महत्वपूर्ण बिन्दु वास्तविक प्रयोगकर्ता डेटा संग UI परीक्षण नगर्नु हो। यदि उत्पादन डाटाबेस प्रतिलिपि परीक्षण वातावरणमा प्रयोग गरिन्छ भने, यी रेकर्डहरू वास्तविक व्यक्तिहरूको डाटा हुन्; स्क्रिनसट र परीक्षण रेकर्डिङले यो डाटा प्रकट गर्न सक्छ। सिंथेटिक (काल्पनिक) परीक्षण खाताहरू प्रयोग गर्नुहोस्; यसले गोपनियताको सुरक्षा गर्छ र परीक्षणहरूलाई पुन: उत्पादन गर्न मिल्छ। वास्तविक ग्राहक खाताको साथ "अर्डर रद्द" परीक्षण सञ्चालन गर्नु नैतिक र परिचालन गल्ती हो।

सुझाव: सकेसम्म कम UI परीक्षणहरू राख्नुहोस्; वास्तविक प्रमाणीकरण API र एकाइ परीक्षणहरूमा छोड्नुहोस्, जुन छिटो र स्थिर छन्। UI परीक्षण महँगो र भंगुर छ - यसलाई साँच्चै अन्त-देखि-अन्त प्रयोगकर्ता प्रवाह (परीक्षण पिरामिड तर्क) प्रमाणित गर्न मात्र प्रयोग गर्नुहोस्।

सवारी साधनको तुलना

सुविधा

सेलेनियम

नाटककार

साइप्रस

भाषाहरू

Java, C#, Python, JS

JS/TS, Python, .NET, Java

JavaScript/TypeScript

स्वत: स्ट्यान्डबाइ

होइन (हातले)

हो (बलियो)

हो

बहु ब्राउजर

चौडा

क्रोमियम/फायरफक्स/वेबकिट

क्रोमियम प्रबल

भंगुरता को प्रवृत्ति

उच्च (म्यानुअल स्ट्यान्डबाइ)

कम

कम

सिक्ने सजिलो

मध्यम

सजिलो

सजिलो

समानान्तर सञ्चालन

ग्रिड आवश्यक छ

बिल्ट-इन

निवासी / भुक्तान गरिएको

AI बाट कोड अनुरोध गर्दा, यो कुन गाडीको हो भनेर स्पष्ट रूपमा बताउनुहोस्; अन्यथा, यसले भ्रामक, गैर-काम गर्ने कोड उत्पादन गर्न सक्छ।

चार प्रतिलिपि गर्न मिल्ने टेम्प्लेटहरू

1) ठोस UI परीक्षण उत्पादन:

तपाईंको भूमिका: वरिष्ठ परीक्षण स्वचालन ईन्जिनियर।निम्न प्रवाहको लागि [उपकरण + भाषा] को साथ परीक्षणहरू लेख्नुहोस्: [प्रवाह]।नियम:- चयनकर्ता डेटा-परीक्षण मात्र; XPath/CSS-वर्ग प्रयोग गर्दै। - कुनै अन्धा निद्रा; स्पष्ट/स्वचालित प्रतीक्षा प्रयोग गर्नुहोस्। - पृष्ठ वस्तु मोडेल लागू गर्नुहोस्। - प्रत्येक दावीलाई वास्तविक प्रयोगकर्ता परिणाम प्रमाणित गर्न दिनुहोस्। तपाईंले मान्य गरिरहनुभएको स्वीकृति मापदण्ड प्रत्येक परीक्षणको सुरुमा टिप्पणी गर्नुहोस्।

2) कमजोरी नियन्त्रण:

भंगुरताको लागि निम्न UI परीक्षण जाँच गर्नुहोस्: - त्यहाँ एक अस्थिर चयनकर्ता (लामो

३) पृष्ठ वस्तुमा रूपान्तरण:

निम्न सादा परीक्षण कोडलाई पृष्ठ वस्तु मोडेल संरचनामा रूपान्तरण गर्नुहोस्। चयनकर्ताहरू र कार्यहरूलाई पृष्ठ वर्गहरूमा सार्नुहोस्; परीक्षण फाइललाई परिदृश्य प्रवाह मात्र पढ्न दिनुहोस्। [उपकरण/भाषा]।कोड: [कोड टाँस्नुहोस्]

4) छद्म-संक्रमण प्रमाण:

प्रमाणित गर्नुहोस् कि यो UI परीक्षणले वास्तवमा प्रमाणीकरण गर्छ: मैले यो परीक्षणलाई RED बनाउने अनुप्रयोग कोडमा कुन एकल परिवर्तन गर्छु? यदि तपाईंले परीक्षण तोड्ने परिवर्तन फेला पार्न सक्नुहुन्न भने, परीक्षण अपर्याप्त छ; हराइरहेको दाबीहरू थप्नुहोस्। परीक्षण: [परीक्षण टाँस्नुहोस्]

तीन मिनी केसहरू

केस १ — कमजोर चयनकर्ताबाट मुक्ति। AI सँग उत्पादन गरिएको 40 परीक्षणहरू मध्ये, 70% एक इन्टरफेस अद्यावधिक पछि भाँचिएको थियो; तिनीहरूमध्ये कुनै पनि वास्तविक बगहरू थिएनन्, तिनीहरू सबै कमजोर XPath चयनकर्ताहरू थिए। टोलीले परीक्षणहरूलाई "नाजुकता जाँच" टेम्प्लेटको साथ डाटा-टेस्टिड आधारमा रूपान्तरण गर्‍यो। अर्को तीन इन्टरफेस अद्यावधिकहरूमा, गलत ब्रेकहरूको संख्या शून्यमा झर्यो; मर्मत समय प्रति हप्ता 6 घण्टा बाट 30 मिनेट घट्यो।

केस २ - नक्कली पास गर्ने UI परीक्षण। एआईले "कार्टमा थप्नुहोस्" परीक्षण उत्पादन गर्‍यो; परीक्षण हरियो थियो। जब "नक्कली-प्रूफ-अफ-पासेज" टेम्प्लेट चलाइएको थियो, परीक्षणले बटन क्लिक र पृष्ठको शीर्षक मात्र जाँच गर्न देखायो, कार्ट काउन्टर बढेको छ कि छैन भनेर कहिल्यै प्रमाणित गर्दैन। कार्ट तर्क पूर्ण रूपमा बिग्रिएको भए पनि, परीक्षा पास भयो। साँचो दावी थपियो (कार्ट ब्याज "१" भएको)।

केस 3 - अन्धा पर्खने जाल। एआई द्वारा उत्पादित सेलेनियम परीक्षणमा, प्रत्येक चरण पछि निद्रा (2) थियो; 60 परीक्षणहरूले 14 मिनेट लियो र अझै पनि कहिलेकाहीं तोडियो। खुला प्रतीक्षामा स्विच गरेपछि (तत्व क्लिक गर्न योग्य हुनको लागि पर्खनुहोस्) समय 5 मिनेटमा गयो र भंगुरता गायब भयो। अन्धो पर्खाइ ढिलो र अविश्वसनीय दुवै थियो।

सामान्य गल्तीहरू

  • कमजोर चयनकर्ताहरूसँग सहमत। AI द्वारा उत्पन्न लामो XPaths प्रयोग गर्दै; पहिलो इन्टरफेस परिवर्तनमा परीक्षण क्र्यास।
  • अन्धो 'निद्रा' छोडेर। एक निश्चित प्रतीक्षा संग समय "समाधान"; ढिलो र अनिर्णय दुवै।
  • तुच्छ दावी। केवल पृष्ठ लोड भएको प्रमाणित गर्नुहोस्; वास्तविक प्रयोगकर्ता परिणाम (नक्कली पास) जाँच गर्दैन।
  • POM बिना बढ्नुहोस्। प्रत्येक परीक्षणमा चयनकर्ताहरू वितरण गर्नुहोस्; इन्टरफेस परिवर्तन हुँदा म्यानुअल रूपमा दर्जनौं फाइलहरू अद्यावधिक गर्दै।
  • उपकरण निर्दिष्ट गर्दैन। तपाइँ कुन उपकरण/भाषा चाहानुहुन्छ AI लाई नबताउने; गडबड, गैर काम गर्ने कोड प्राप्त गर्दै।
  • तपाईंले उत्पन्न कोड र पास गर्दा विश्वास गर्नुहोस्। कोड तोडेर परीक्षण गर्दैन।

संक्षेपमा

UI परीक्षण स्वचालन कार्यक्रमको साथ वास्तविक ब्राउजर ड्राइभ गरेर प्रयोगकर्ता व्यवहार प्रमाणित गर्दछ। AI ले यो कोड छिट्टै उत्पन्न गर्छ, तर त्यहाँ दुईवटा ठूला समस्याहरू छन्: भंगुर परीक्षणहरू (खराब चयनकर्ता, अन्धा पर्खाइ) र नक्कली-उतीर्ण परीक्षणहरू (अपूर्ण/तुच्छी दाबी)। ठोस UI परीक्षणका तीन स्तम्भहरू प्रतिबद्ध चयनकर्ता (डेटा-टेस्टिड), स्पष्ट पर्खनुहोस्, र वास्तविक प्रयोगकर्ता परिणाम प्रमाणित गर्ने दाबी हुन्। पृष्ठ वस्तु मोडेलमा उत्पन्न परीक्षणहरू मौलिक रूपमा मर्मत कार्यलाई सरल बनाउँछ। "कुन परिवर्तनले यसलाई तोड्छ?" प्रश्नको साथ प्रत्येक उत्पन्न परीक्षणको परीक्षण गर्नुहोस्।

आवेदन कार्य

तपाईंको आफ्नै परियोजनाबाट प्रयोगकर्ता प्रवाह चयन गर्नुहोस् (जस्तै लगइन वा खोजी)। "बलियो UI परीक्षण जेनेरेसन" टेम्प्लेटको साथ AI लेखन परीक्षणहरू लिनुहोस्। त्यसपछि: (1) चयनकर्ताहरू जाँच गर्नुहोस् र ठीक गर्नुहोस् र "फ्र्याजिलिटी जाँच" संग पर्खनुहोस्, (2) प्रमाणित गर्नुहोस् कि प्रत्येक परीक्षणले "स्यूडो-पास प्रमाण" संग प्रमाणित गर्दछ, (3) कोड तोड्नुहोस् र परीक्षण रातो भएको निरीक्षण गर्नुहोस्। उत्पादन गरिएका र सच्याइएका परीक्षणहरूको सङ्ख्या र तपाईंले फेला पारेका कमजोरीहरू र स्यूडो-पासहरूको सङ्ख्या रिपोर्ट गर्नुहोस्।

चेकलिस्ट

  • [] मैले AI लाई उपकरण, भाषा, चयनकर्ता नीति र वास्तुकला (POM) स्पष्ट रूपमा दिएँ।
  • [ ] मैले प्रमाणित गरें कि चयनकर्ताहरू डेटा-परीक्षित छन्।
  • [ ] मैले अन्धा निद्राको सट्टा स्पष्ट/स्वचालित प्रतीक्षा प्रयोग गर्न निश्चित गरें।
  • [ ] मैले जाँच गरें कि प्रत्येक दावीले वास्तविक प्रयोगकर्ता परिणाम प्रमाणित गर्दछ।
  • [] मैले कोड तोडेर प्रत्येक परीक्षणको परीक्षण गरें; रातो भएको देखेँ।
  • [ ] मैले पृष्ठ वस्तु मोडेल संरचनामा परीक्षणहरू सङ्कलन गरें।