दावा करें और सत्यापित करें Selenium आईडीई

⚡ स्मार्ट सारांश

Selenium स्क्रिप्ट और कमांड से लैस IDE परीक्षकों को Selenese (IDE की हल्की कमांड भाषा) का उपयोग करके ब्राउज़र क्रियाओं को रिकॉर्ड करने, संपादित करने और पुनः चलाने की सुविधा देता है। यह लेख स्क्रिप्ट रिकॉर्ड करने, Selenese को मैन्युअल रूप से लिखने, Assert और Verify के बीच चयन करने और ब्रेकपॉइंट के साथ डिबगिंग करने के बारे में बताता है।

  • 🎬 सबसे पहले रिकॉर्ड करें: Selenium ब्राउज़र चलाते समय IDE क्लिक, इनपुट और अभिकथन को स्वचालित रूप से कैप्चर करता है।
  • 🧩 सेलेनीज़ भाषा: प्रत्येक कमांड में एक कमांड नाम, वैकल्पिक लक्ष्य और वैकल्पिक मान होता है - दो से अधिक पैरामीटर कभी नहीं होते।
  • 🛑 दावा बनाम सत्यापन: विफलता होने पर Assert परीक्षण को रोक देता है; Verify विफलता को लॉग करता है और अगले चरण के साथ आगे बढ़ता है।
  • 🔍 तीन प्रकार के कमांड: एक्शन पेज के साथ इंटरैक्ट करते हैं, एक्सेसर्स वेरिएबल्स में स्टेट पढ़ते हैं, और असर्शन्स शर्तों की जांच करते हैं।
  • 🐞 डीबग सहायता: किसी एक कमांड की जांच करने या उसे दोबारा चलाने के लिए एक्जीक्यूट कमांड, स्टार्ट पॉइंट, ब्रेकपॉइंट और स्टेप का उपयोग करें।
  • 🤖 एआई बूस्ट: एआई परीक्षण उपकरण स्वचालित रूप से सेलेनीज़ उत्पन्न करते हैं, मजबूत लोकेटर सुझाते हैं और आईईडी स्क्रिप्ट को परिवर्तित करते हैं। Selenium वेबड्राइवर कोड।

पासवर्ड को कैसे क्रैक (हैक) करें?

हम उपयोग करेंगे Mercury हमारी परीक्षण के लिए चुनी गई वेब एप्लिकेशन एक टूर वेबसाइट है। यह एक ऑनलाइन फ्लाइट रिजर्वेशन सिस्टम है जिसमें इस ट्यूटोरियल के लिए आवश्यक सभी तत्व मौजूद हैं। इसका आधार URL is https://demo.guru99.com/test/newtours/.

आइये अब हम अपना पहला टेस्ट स्क्रिप्ट बनाएं Selenium हम रिकॉर्डिंग के माध्यम से सबसे सामान्य विधि का उपयोग करके IDE चलाएंगे। इसके बाद, हम प्लेबैक सुविधा का उपयोग करके स्क्रिप्ट को निष्पादित करेंगे।

नोट: यह ट्यूटोरियल क्लासिक का उपयोग करता है Firefox-केवल Selenium Selenese की बुनियादी बातों को समझाने के लिए Firebug के साथ IDE 1.x का उपयोग किया गया था। Firebug को बंद कर दिया गया था। Firefox 57, और आधुनिक Selenium IDE अब Chrome है / Firefox यह एज ब्राउज़र का एक अलग यूजर इंटरफेस वाला एक्सटेंशन है। नीचे दिए गए सेलेनीज़ कॉन्सेप्ट, कमांड टाइप और डिबगिंग फीचर्स नए IDE पर भी सीधे लागू होते हैं।

रिकॉर्डिंग करके स्क्रिप्ट बनाएं

चरण 1)

  • लांच Firefox और Selenium आईडीई।
  • हमारे बेस के लिए मान दर्ज करें URL: https://demo.guru99.com/test/newtours/.
  • Togglरिकॉर्ड बटन को चालू करें (यदि यह डिफ़ॉल्ट रूप से चालू नहीं है)।

Selenium बेस के साथ आईईडी URL सेट और रिकॉर्ड बटन चालू/बंद हैं

चरण 2) In Firefox, पर जाए https://demo.guru99.com/test/newtours/. Firefox आपको नीचे दिए गए पेज के समान एक पेज पर पहुंचना चाहिए।

Mercury टूर होमपेज में Firefox

चरण 3)

  • पृष्ठ के भीतर किसी भी खाली स्थान पर दाएँ क्लिक करें — उदाहरण के लिए, Mercury ऊपरी बाएँ कोने में टूर्स का लोगो। इससे यह पृष्ठ खुलता है। Selenium IDE संदर्भ मेनू। मत करो किसी भी हाइपरलिंक वाली वस्तु या छवि पर क्लिक करें।
  • चयन उपलब्ध कमांड दिखाएँ विकल्प.
  • चुनें assertTitle exact: Welcome: Mercury Toursयह कमांड जांच करती है कि पेज का शीर्षक सही है या नहीं।

Selenium उपलब्ध कमांड दिखाएँ के साथ IDE संदर्भ मेनू

Selenium IDE संपादक में assertTitle कमांड जोड़ा गया है

चरण 4)

  • में उपयोगकर्ता नाम टेक्स्ट बॉक्स Mercury टूर्स, गलत उपयोगकर्ता नाम दर्ज करें invalidUNN.
  • में पासवर्ड टेक्स्ट बॉक्स में अमान्य पासवर्ड टाइप करें invalidPWD.

गलत उपयोगकर्ता नाम दर्ज किया गया Mercury टूर फॉर्म

गलत पासवर्ड दर्ज किया गया Mercury टूर फॉर्म

चरण 5) दबाएं दाखिल करना बटन. Firefox आपको नीचे दिखाए गए पेज पर पहुंचना चाहिए।

Mercury टूर साइन-इन विफलता पृष्ठ

चरण 6) Togglरिकॉर्डिंग रोकने के लिए रिकॉर्ड बटन को बंद कर दें। अब आपकी स्क्रिप्ट नीचे दी गई स्क्रिप्ट जैसी दिखनी चाहिए।

Selenium IDE ने रुकने के बाद स्क्रिप्ट रिकॉर्ड कीping रिकॉर्डर

चरण 7) अब रिकॉर्ड किए गए टेस्ट स्क्रिप्ट को सेव करें। पट्टिका मेनू, चुनें टेस्ट केस सहेजें, या दबाएँ कंट्रोल+S.

सेव टेस्ट केस विकल्प में Selenium IDE फ़ाइल मेनू

चरण 8)

  • एक गंतव्य फ़ोल्डर चुनें, फिर उसका नाम दें। परीक्षण का मामला अमान्य लॉगिन.
  • क्लिक करें सहेजें.

संवाद को सहेजें जिसमें नामकरण शामिल है Selenium IDE टेस्ट केस Invalid_login

चरण 9) ध्यान दें कि फ़ाइल HTML प्रारूप में सहेजी गई है।

HTML एक्सटेंशन के साथ सहेजी गई टेस्ट केस फ़ाइल

चरण 10) पर लौटें Selenium IDE पर जाएं और क्लिक करें प्लेबैक संपूर्ण स्क्रिप्ट को निष्पादित करने के लिए बटन। Selenium IDE प्रत्येक क्रिया को पूरी सटीकता से दोहराता है।

Selenium आईईडी प्लेबैक बटन रिकॉर्ड किए गए स्क्रिप्ट को निष्पादित करता है

का परिचय Selenium कमांड्स – सेलेनीज़

सेलेनीज़ वह लिपि भाषा है जो इसे संचालित करती है। Selenium आई.डी.ई. नियम सरल हैं:

  • प्रत्येक सेलेनीज़ कमांड अधिकतम दो पैरामीटर स्वीकार करता है — एक लक्ष्य और एक मूल्य.
  • पैरामीटर हमेशा आवश्यक नहीं होते। इनकी संख्या कमांड पर निर्भर करती है।

कमांड के प्रकार

सेलेनीज़ भाषा में आदेशों को तीन श्रेणियों में बांटा गया है। प्रत्येक श्रेणी की लिपि में अलग-अलग भूमिका होती है।

क्रियाएँ वे कमांड जो सीधे पेज के तत्वों के साथ इंटरैक्ट करते हैं। उदाहरण: click यह आपके द्वारा क्लिक किए गए एलिमेंट के साथ इंटरैक्ट करता है; type यह एक टेक्स्ट बॉक्स में एक मान डालता है और टेक्स्ट बॉक्स उसे वापस प्रदर्शित करता है, जिससे दो-तरफ़ा अंतःक्रिया संभव होती है।
पहुंचकर्ता वे कमांड जो किसी वेरिएबल में मान संग्रहीत करते हैं। उदाहरण: storeTitle यह केवल पेज का शीर्षक पढ़ता है और उसे सहेज लेता है - यह पेज पर कुछ भी नहीं बदलता है।
इस प्रकार के दावे वे कमांड जो किसी शर्त को सत्यापित करते हैं। Selenese तीन प्रकार के अभिकथन प्रदान करता है: जोर असफल होने पर परीक्षण रोक देता है। सत्यापित करें यह विफलता को लॉग करता है और आगे बढ़ता है, और के लिए प्रतीक्षा करें किसी शर्त के सही होने तक रुकता है (डिफ़ॉल्ट टाइमआउट 30 सेकंड, विकल्प > सामान्य के अंतर्गत कॉन्फ़िगर किया जा सकता है)।

दावा बनाम सत्यापन Selenium

नीचे दिए गए आरेख परीक्षण के दौरान जांच विफल होने पर Assert और Verify कमांड के रनटाइम व्यवहार की तुलना करते हैं।

Assert कमांड व्यवहार रोकेंping विफलता पर परीक्षण

लॉग की गई विफलता के बाद परीक्षण जारी रखते हुए कमांड के व्यवहार को सत्यापित करें।

कॉमन कमांड्स

आदेश पैरामीटर्स की संख्या विवरण
खुला 0 - 2 एक पृष्ठ खोलता है URL.
क्लिक करें / क्लिक करें और प्रतीक्षा करें 1 किसी निर्दिष्ट तत्व पर क्लिक करता है।
प्रकार / टाइपकीज़ 2 वर्णों का अनुक्रम टाइप करता है.
शीर्षक सत्यापित करें / शीर्षक की पुष्टि करें 1 वास्तविक पृष्ठ शीर्षक की तुलना अपेक्षित मान से करता है.
सत्यापित करेंटेक्स्टवर्तमान 1 यह जांच करता है कि दिया गया पाठ पृष्ठ में मौजूद है या नहीं।
सत्यापिततत्ववर्तमान 1 किसी विशिष्ट तत्व की उपस्थिति की जाँच करता है।
सत्यापित करेंतालिका 2 तालिका की सामग्री की तुलना अपेक्षित मानों से करता है।
पेज लोड होने तक प्रतीक्षा करें 1 पेज लोड होने तक निष्पादन रोक देता है।
waitForElementPresent 1 निर्दिष्ट तत्व के प्रकट होने तक निष्पादन को रोक देता है।

फायरबग के साथ मैन्युअल रूप से स्क्रिप्ट बनाएं

अब आइए इसी टेस्ट केस को मैन्युअल रूप से दोबारा बनाते हैं।ping कमांड। यह वॉकथ्रू एलिमेंट लोकेटर की जांच करने के लिए फायरबग का उपयोग करता है। (आधुनिक में) Selenium IDE में, फायरबग के बजाय ब्राउज़र के बिल्ट-इन डेवलपर टूल्स का उपयोग करें।

चरण 1) प्रारंभिक Firefox और Selenium आईईडी. आधार टाइप करें URL https://demo.guru99.com/test/newtours/रिकॉर्ड बटन बंद होना चाहिए।

Selenium IDE रिकॉर्ड टॉगल बंद अवस्था में है

चरण 2) एडिटर में सबसे ऊपर वाली खाली लाइन पर क्लिक करें।

पहली खाली पंक्ति का चयन करना Selenium आईडीई संपादक

प्रकार open कमांड टेक्स्ट बॉक्स में टाइप करें और एंटर दबाएं।

ओपन कमांड दर्ज किया गया Selenium IDE कमांड फ़ील्ड

चरण 3) नेविगेट करें Firefox आधार के लिए URL और फायरबग को सक्रिय करें। IDE एडिटर में, नीचे दी गई पंक्ति का चयन करें। open कमांड और टाइप assertTitleसटीकता के लिए ऑटो-कंप्लीट सुझावों का उपयोग करें।

assertTitle के लिए स्वतः पूर्ण होने के सुझाव Selenium आईडीई

चरण 4) फायरबग में, विस्तार करें <head> टैग को प्रकट करने के लिए <title>शीर्षक मान पर क्लिक करें (स्वागत हे: Mercury टूर्स) और इसे पेस्ट करें Target संपादक में फ़ील्ड.

फायरबग से पेज टाइटल को कॉपी करके IDE के टारगेट फ़ील्ड में पेस्ट करना

चरण 5) एडिटर में तीसरी खाली लाइन पर क्लिक करें और टाइप करें type कमांड फ़ील्ड में। फायरबग में, क्लिक करें निरीक्षण बटन.

इसमें जोड़े जा रहे कमांड का प्रकार Selenium आईडीई संपादक

यूज़र नेम टेक्स्ट बॉक्स पर क्लिक करें। फायरबग अपने आप संबंधित HTML एलिमेंट दिखा देगा।

फायरबग उपयोगकर्ता नाम फ़ील्ड का निरीक्षण कर रहा है Mercury टूर्स

चरण 6) उपयोगकर्ता नाम टेक्स्ट बॉक्स में कोई आईडी नहीं है, लेकिन इसमें एक NAME विशेषता है। NAME मान को कॉपी करें और इसे पेस्ट करें। Target का क्षेत्र Selenium आईडीई।

उपयोगकर्ता नाम फ़ील्ड के NAME विशेषता को कॉपी करना

अभी भी में Target फ़ील्ड, उपसर्ग userName साथ में name= so Selenium IDE उस तत्व को लक्षित करता है जिसका NAME विशेषता है userName.

Selenium IDE लक्ष्य फ़ील्ड जिसका नाम = उपयोगकर्ता नाम लोकेटर है

प्रकार invalidUN वैल्यू फ़ील्ड में। अब आपकी स्क्रिप्ट में तीसरा कमांड जुड़ गया है। Selenium IDE केस-सेंसिटिव है, इसलिए मान और एट्रिब्यूट नाम ठीक वैसे ही टाइप करें जैसे वे एप्लिकेशन में दिखाई देते हैं।

नाम=userName को लक्षित करते हुए अमान्य UN मान के साथ कमांड टाइप करें

चरण 7) ty द्वारा चौथा कमांड जोड़ेंping type कमांड फ़ील्ड में। फायरबग का उपयोग करें निरीक्षण पासवर्ड टेक्स्ट बॉक्स पर मौजूद बटन।

फायरबग पासवर्ड फ़ील्ड की जांच कर रहा है

NAME विशेषता को पेस्ट करें (password) में Target फ़ील्ड, उपसर्ग के साथ name=और मान को सेट करें invalidPW.

Selenium पासवर्ड टाइप कमांड जोड़ने के बाद IDE स्क्रिप्ट

चरण 8) ty द्वारा पांचवां कमांड जोड़ेंping clickAndWait कमांड फ़ील्ड में। फायरबग का उपयोग करें निरीक्षण साइन-इन बटन पर।

फायरबग साइन-इन बटन का निरीक्षण कर रहा है

नाम का मान पेस्ट करें (login) में Target क्षेत्र के साथ name= उपसर्ग।

अंतिम मैनुअल Selenium पांच कमांड वाली IDE स्क्रिप्ट

चरण 9) टेस्ट केस को पहले की तरह सेव करें।

खोज बटन का उपयोग करना

RSI खोज में बटन Selenium IDE पुष्टि करता है कि दर्ज किया गया मान Target यह फ़ील्ड वास्तव में पृष्ठ पर मौजूद एक UI तत्व से मेल खाती है।

ओपन अमान्य लॉगिन पिछले अनुभाग से टेस्ट केस लें और किसी भी कमांड पर क्लिक करें। Target प्रविष्टि — उदाहरण के लिए, तीसरा आदेश।

इसके बगल में स्थित फाइंड बटन Target क्षेत्र में Selenium आईडीई

क्लिक करें खोजउपयोगकर्ता नाम टेक्स्ट बॉक्स पर Mercury टूर पेज कुछ समय के लिए हाइलाइट हो जाता है।

उपयोगकर्ता नाम फ़ील्ड हाइलाइट किया गया है Firefox फाइंड पर क्लिक करने के बाद

मुख्य बिंदु इस बात की पुष्टि करता है कि Selenium IDE ने लोकेटर को सही ढंग से हल कर लिया है। यदि गलत एलिमेंट (या कोई एलिमेंट नहीं) हाइलाइट किया गया है, तो स्क्रिप्ट में लोकेटर को ठीक करने की आवश्यकता है।

कमांड निष्पादित करें

एक्जीक्यूट कमांड पूरे टेस्ट केस को चलाए बिना स्क्रिप्ट की एक पंक्ति को चलाता है। जिस लाइन को आप चलाना चाहते हैं उस पर क्लिक करें और या तो चुनें क्रियाएँ > इस आदेश को निष्पादित करें मेनू से या दबाएँ X कीबोर्ड पर

चरण 1) सुनिश्चित करें कि ब्राउज़र चालू है Mercury टूर होमपेज। जिस लाइन पर आप जाना चाहते हैं उस पर क्लिक करें — उदाहरण के लिए, type | userName | invalidUN.

निष्पादन के लिए चयनित कमांड टाइप करें Selenium आईडीई

चरण 2) दबाएँ X कीबोर्ड पर

चरण 3) पृष्ठ पर उपयोगकर्ता नाम टेक्स्ट बॉक्स में जानकारी भरी हुई है। invalidUN.

कमांड निष्पादित होने के बाद उपयोगकर्ता नाम फ़ील्ड भर जाता है

इस तरह से कमांड निष्पादित करना उस पृष्ठ पर निर्भर करता है जिस पर कमांड निष्पादित किए जाते हैं। Firefox वर्तमान में प्रदर्शित हो रहा है। गूगल के होमपेज पर यही कमांड चलाने पर विफलता मिलेगी क्योंकि वहां कोई फ़ील्ड मौजूद नहीं है जिसका नाम हो। userName वहाँ.

प्रारंभ बिंदु

एक प्रारंभिक बिंदु बताता है Selenium IDE यह निर्धारित करता है कि निष्पादन किस पंक्ति से शुरू करना है। शॉर्टकट कुंजी यह है S.

आरंभिक बिंदु निर्धारित किया गया है Selenium IDE स्क्रिप्ट लाइन

ऊपर दिए गए उदाहरण में, प्लेबैक तीसरी पंक्ति से शुरू होता है (type | password | invalidPW). एक टेस्ट स्क्रिप्ट का केवल एक ही प्रारंभिक बिंदु हो सकता है। एक्जीक्यूट कमांड की तरह, इसका आरंभिक बिंदु वर्तमान में प्रदर्शित पृष्ठ पर निर्भर करता है और यदि पृष्ठ गलत है तो यह विफल हो जाता है।

ब्रेकप्वाइंट

ब्रेकपॉइंट्स बताते हैं Selenium IDE का उपयोग करके किसी दी गई पंक्ति पर परीक्षण को स्वचालित रूप से रोकें। शॉर्टकट कुंजी यह है: B.

ब्रेकपॉइंट संकेतक Selenium IDE स्क्रिप्ट लाइन

पीले रंग से हाइलाइट किया गया भाग रुके हुए चरण को दर्शाता है। एक टेस्ट केस में कई ब्रेकपॉइंट हो सकते हैं।

स्‍टेप

RSI स्‍टेप यह कमांड रुके हुए टेस्ट केस के बाद अगली लाइन को चलाता है। स्क्रिप्ट को एक-एक कमांड करके चलाने के लिए इसे ब्रेकपॉइंट के साथ इस्तेमाल करें।

स्टेप पर क्लिक करने से पहले क्लिकएंडवेट पर टेस्ट रुक गया।

स्टेप पर क्लिक करने से पहले। टेस्ट केस लाइन पर रुका हुआ है clickAndWait | login.

स्टेप पर क्लिक करने के बाद टेस्ट अगले कमांड पर आगे बढ़ गया।

स्टेप पर क्लिक करने के बाद। RSI clickAndWait | login कमांड चलती है और अगली कमांड पर निष्पादन रुक जाता है (verifyTitle | Sign-on: Mercury Toursअगली पंक्ति बिना ब्रेकपॉइंट के भी रुक जाती है — यही स्टेप का उद्देश्य है।

स्रोत दृश्य में अन्य प्रारूपों का उपयोग करते समय ध्यान देने योग्य महत्वपूर्ण बातें

गैर-HTML स्रोत दृश्य प्रारूपों के बारे में चेतावनी

Selenium IDE 1.x केवल HTML प्रारूप के साथ ही विश्वसनीय रूप से काम करता है - अन्य प्रारूप अभी भी प्रायोगिक चरण में हैं। गैर-HTML स्रोत दृश्य में परीक्षण बनाना या संपादित करना अनुशंसित नहीं है। संस्करण 1.9.1 तक ज्ञात समस्याएं निम्नलिखित हैं:

  • एचटीएमएल पर वापस जाए बिना आप प्लेबैक का उपयोग नहीं कर सकते या टेबल व्यू पर वापस नहीं जा सकते।
  • सोर्स व्यू में कमांड जोड़ने का सबसे सुरक्षित तरीका उन्हें रिकॉर्ड करना है।
  • सोर्स व्यू में मैन्युअल रूप से किए गए संपादन दूसरे फॉर्मेट में बदलने पर नष्ट हो जाते हैं।
  • आप सोर्स व्यू में टेस्ट केस सेव कर सकते हैं, लेकिन Selenium IDE इसे पुनः खोलने में विफल हो सकता है।

सेलेनीज़ पाठों को अन्य भाषाओं में परिवर्तित करने का अनुशंसित तरीका यह है: फ़ाइल > टेस्ट केस को इस रूप में निर्यात करें… मेन्यू, सोर्स व्यू नहीं।

अक्सर पूछे जाने वाले प्रश्न

धरोहर Firefox-केवल Selenium IDE 1.x का अब रखरखाव नहीं किया जाता है। आधुनिक संस्करण Selenium IDE क्रोम के लिए एक ब्राउज़र एक्सटेंशन है। Firefoxऔर selenium.dev से Edge, जो रिकॉर्ड-एंड-प्लेबैक के साथ-साथ वेबड्राइवर कोड में निर्यात का समर्थन करता है।

जब कोई परीक्षण आगे नहीं बढ़ सकता (उदाहरण के लिए, सही पृष्ठ पहले लोड होना चाहिए), तो Assert का उपयोग करें। Verify का उपयोग तब करें जब वर्तमान परीक्षण विफल होने पर भी बाद के परीक्षण उपयोगी हों, जैसे कि किसी फ़ॉर्म पर कई फ़ील्ड को सत्यापित करना।

फायरबग को सेवामुक्त कर दिया गया था Firefox 57. XPath और CSS लोकेटर कैप्चर करने के लिए ब्राउज़र के बिल्ट-इन DevTools (F12) या SelectorsHub, ChroPath, या Playwright Inspector जैसे एक्सटेंशन का उपयोग करें। Selenium स्क्रिप्ट।

हां. AI टेस्ट प्लेटफॉर्म उपयोगकर्ता सत्रों की निगरानी करते हैं, सेलेनीज़ कमांड उत्पन्न करते हैं, मजबूत लोकेटर सुझाते हैं और रिकॉर्ड किए गए स्क्रिप्ट को परिवर्तित करते हैं। Selenium वेबड्राइवर कोड में Java, Pythonया, Javaस्क्रिप्ट लिखने में बहुत कम मैन्युअल प्रयास लगता है।

जेनरेटिव एआई DOM स्नैपशॉट की जांच करता है और ऐसे लोकेटर प्रस्तावित करता है जिनके टूटने की संभावना कम होती है — यह नाजुक XPath की तुलना में डेटा-परीक्षित विशेषताओं को प्राथमिकता देता है। सेल्फ-हीलिंग एआई एजेंट UI परिवर्तनों के बाद लोकेटरों को स्वचालित रूप से पुनः लिखते हैं, और डेटा को सुरक्षित रखते हैं।ping Selenium IDE स्क्रिप्ट हरी हैं।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: