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

हम उपयोग करेंगे 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रिकॉर्ड बटन को चालू करें (यदि यह डिफ़ॉल्ट रूप से चालू नहीं है)।
चरण 2) In Firefox, पर जाए https://demo.guru99.com/test/newtours/. Firefox आपको नीचे दिए गए पेज के समान एक पेज पर पहुंचना चाहिए।
चरण 3)
- पृष्ठ के भीतर किसी भी खाली स्थान पर दाएँ क्लिक करें — उदाहरण के लिए, Mercury ऊपरी बाएँ कोने में टूर्स का लोगो। इससे यह पृष्ठ खुलता है। Selenium IDE संदर्भ मेनू। मत करो किसी भी हाइपरलिंक वाली वस्तु या छवि पर क्लिक करें।
- चयन उपलब्ध कमांड दिखाएँ विकल्प.
- चुनें
assertTitle exact: Welcome: Mercury Toursयह कमांड जांच करती है कि पेज का शीर्षक सही है या नहीं।
चरण 4)
- में उपयोगकर्ता नाम टेक्स्ट बॉक्स Mercury टूर्स, गलत उपयोगकर्ता नाम दर्ज करें
invalidUNN. - में पासवर्ड टेक्स्ट बॉक्स में अमान्य पासवर्ड टाइप करें
invalidPWD.
चरण 5) दबाएं दाखिल करना बटन. Firefox आपको नीचे दिखाए गए पेज पर पहुंचना चाहिए।
चरण 6) Togglरिकॉर्डिंग रोकने के लिए रिकॉर्ड बटन को बंद कर दें। अब आपकी स्क्रिप्ट नीचे दी गई स्क्रिप्ट जैसी दिखनी चाहिए।
चरण 7) अब रिकॉर्ड किए गए टेस्ट स्क्रिप्ट को सेव करें। पट्टिका मेनू, चुनें टेस्ट केस सहेजें, या दबाएँ कंट्रोल+S.
चरण 8)
- एक गंतव्य फ़ोल्डर चुनें, फिर उसका नाम दें। परीक्षण का मामला अमान्य लॉगिन.
- क्लिक करें सहेजें.
चरण 9) ध्यान दें कि फ़ाइल HTML प्रारूप में सहेजी गई है।
चरण 10) पर लौटें Selenium IDE पर जाएं और क्लिक करें प्लेबैक संपूर्ण स्क्रिप्ट को निष्पादित करने के लिए बटन। Selenium IDE प्रत्येक क्रिया को पूरी सटीकता से दोहराता है।
का परिचय Selenium कमांड्स – सेलेनीज़
सेलेनीज़ वह लिपि भाषा है जो इसे संचालित करती है। Selenium आई.डी.ई. नियम सरल हैं:
- प्रत्येक सेलेनीज़ कमांड अधिकतम दो पैरामीटर स्वीकार करता है — एक लक्ष्य और एक मूल्य.
- पैरामीटर हमेशा आवश्यक नहीं होते। इनकी संख्या कमांड पर निर्भर करती है।
कमांड के प्रकार
सेलेनीज़ भाषा में आदेशों को तीन श्रेणियों में बांटा गया है। प्रत्येक श्रेणी की लिपि में अलग-अलग भूमिका होती है।
| क्रियाएँ | वे कमांड जो सीधे पेज के तत्वों के साथ इंटरैक्ट करते हैं। उदाहरण: click यह आपके द्वारा क्लिक किए गए एलिमेंट के साथ इंटरैक्ट करता है; type यह एक टेक्स्ट बॉक्स में एक मान डालता है और टेक्स्ट बॉक्स उसे वापस प्रदर्शित करता है, जिससे दो-तरफ़ा अंतःक्रिया संभव होती है। |
| पहुंचकर्ता | वे कमांड जो किसी वेरिएबल में मान संग्रहीत करते हैं। उदाहरण: storeTitle यह केवल पेज का शीर्षक पढ़ता है और उसे सहेज लेता है - यह पेज पर कुछ भी नहीं बदलता है। |
| इस प्रकार के दावे | वे कमांड जो किसी शर्त को सत्यापित करते हैं। Selenese तीन प्रकार के अभिकथन प्रदान करता है: जोर असफल होने पर परीक्षण रोक देता है। सत्यापित करें यह विफलता को लॉग करता है और आगे बढ़ता है, और के लिए प्रतीक्षा करें किसी शर्त के सही होने तक रुकता है (डिफ़ॉल्ट टाइमआउट 30 सेकंड, विकल्प > सामान्य के अंतर्गत कॉन्फ़िगर किया जा सकता है)। |
दावा बनाम सत्यापन Selenium
नीचे दिए गए आरेख परीक्षण के दौरान जांच विफल होने पर Assert और Verify कमांड के रनटाइम व्यवहार की तुलना करते हैं।
कॉमन कमांड्स
| आदेश | पैरामीटर्स की संख्या | विवरण |
|---|---|---|
| खुला | 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/रिकॉर्ड बटन बंद होना चाहिए।
चरण 2) एडिटर में सबसे ऊपर वाली खाली लाइन पर क्लिक करें।
प्रकार open कमांड टेक्स्ट बॉक्स में टाइप करें और एंटर दबाएं।
चरण 3) नेविगेट करें Firefox आधार के लिए URL और फायरबग को सक्रिय करें। IDE एडिटर में, नीचे दी गई पंक्ति का चयन करें। open कमांड और टाइप assertTitleसटीकता के लिए ऑटो-कंप्लीट सुझावों का उपयोग करें।
चरण 4) फायरबग में, विस्तार करें <head> टैग को प्रकट करने के लिए <title>शीर्षक मान पर क्लिक करें (स्वागत हे: Mercury टूर्स) और इसे पेस्ट करें Target संपादक में फ़ील्ड.
चरण 5) एडिटर में तीसरी खाली लाइन पर क्लिक करें और टाइप करें type कमांड फ़ील्ड में। फायरबग में, क्लिक करें निरीक्षण बटन.
यूज़र नेम टेक्स्ट बॉक्स पर क्लिक करें। फायरबग अपने आप संबंधित HTML एलिमेंट दिखा देगा।
चरण 6) उपयोगकर्ता नाम टेक्स्ट बॉक्स में कोई आईडी नहीं है, लेकिन इसमें एक NAME विशेषता है। NAME मान को कॉपी करें और इसे पेस्ट करें। Target का क्षेत्र Selenium आईडीई।
अभी भी में Target फ़ील्ड, उपसर्ग userName साथ में name= so Selenium IDE उस तत्व को लक्षित करता है जिसका NAME विशेषता है userName.
प्रकार invalidUN वैल्यू फ़ील्ड में। अब आपकी स्क्रिप्ट में तीसरा कमांड जुड़ गया है। Selenium IDE केस-सेंसिटिव है, इसलिए मान और एट्रिब्यूट नाम ठीक वैसे ही टाइप करें जैसे वे एप्लिकेशन में दिखाई देते हैं।
चरण 7) ty द्वारा चौथा कमांड जोड़ेंping type कमांड फ़ील्ड में। फायरबग का उपयोग करें निरीक्षण पासवर्ड टेक्स्ट बॉक्स पर मौजूद बटन।
NAME विशेषता को पेस्ट करें (password) में Target फ़ील्ड, उपसर्ग के साथ name=और मान को सेट करें invalidPW.
चरण 8) ty द्वारा पांचवां कमांड जोड़ेंping clickAndWait कमांड फ़ील्ड में। फायरबग का उपयोग करें निरीक्षण साइन-इन बटन पर।
नाम का मान पेस्ट करें (login) में Target क्षेत्र के साथ name= उपसर्ग।
चरण 9) टेस्ट केस को पहले की तरह सेव करें।
खोज बटन का उपयोग करना
RSI खोज में बटन Selenium IDE पुष्टि करता है कि दर्ज किया गया मान Target यह फ़ील्ड वास्तव में पृष्ठ पर मौजूद एक UI तत्व से मेल खाती है।
ओपन अमान्य लॉगिन पिछले अनुभाग से टेस्ट केस लें और किसी भी कमांड पर क्लिक करें। Target प्रविष्टि — उदाहरण के लिए, तीसरा आदेश।
क्लिक करें खोजउपयोगकर्ता नाम टेक्स्ट बॉक्स पर Mercury टूर पेज कुछ समय के लिए हाइलाइट हो जाता है।
मुख्य बिंदु इस बात की पुष्टि करता है कि Selenium IDE ने लोकेटर को सही ढंग से हल कर लिया है। यदि गलत एलिमेंट (या कोई एलिमेंट नहीं) हाइलाइट किया गया है, तो स्क्रिप्ट में लोकेटर को ठीक करने की आवश्यकता है।
कमांड निष्पादित करें
एक्जीक्यूट कमांड पूरे टेस्ट केस को चलाए बिना स्क्रिप्ट की एक पंक्ति को चलाता है। जिस लाइन को आप चलाना चाहते हैं उस पर क्लिक करें और या तो चुनें क्रियाएँ > इस आदेश को निष्पादित करें मेनू से या दबाएँ X कीबोर्ड पर
चरण 1) सुनिश्चित करें कि ब्राउज़र चालू है Mercury टूर होमपेज। जिस लाइन पर आप जाना चाहते हैं उस पर क्लिक करें — उदाहरण के लिए, type | userName | invalidUN.
चरण 2) दबाएँ X कीबोर्ड पर
चरण 3) पृष्ठ पर उपयोगकर्ता नाम टेक्स्ट बॉक्स में जानकारी भरी हुई है। invalidUN.
इस तरह से कमांड निष्पादित करना उस पृष्ठ पर निर्भर करता है जिस पर कमांड निष्पादित किए जाते हैं। Firefox वर्तमान में प्रदर्शित हो रहा है। गूगल के होमपेज पर यही कमांड चलाने पर विफलता मिलेगी क्योंकि वहां कोई फ़ील्ड मौजूद नहीं है जिसका नाम हो। userName वहाँ.
प्रारंभ बिंदु
एक प्रारंभिक बिंदु बताता है Selenium IDE यह निर्धारित करता है कि निष्पादन किस पंक्ति से शुरू करना है। शॉर्टकट कुंजी यह है S.
ऊपर दिए गए उदाहरण में, प्लेबैक तीसरी पंक्ति से शुरू होता है (type | password | invalidPW). एक टेस्ट स्क्रिप्ट का केवल एक ही प्रारंभिक बिंदु हो सकता है। एक्जीक्यूट कमांड की तरह, इसका आरंभिक बिंदु वर्तमान में प्रदर्शित पृष्ठ पर निर्भर करता है और यदि पृष्ठ गलत है तो यह विफल हो जाता है।
ब्रेकप्वाइंट
ब्रेकपॉइंट्स बताते हैं Selenium IDE का उपयोग करके किसी दी गई पंक्ति पर परीक्षण को स्वचालित रूप से रोकें। शॉर्टकट कुंजी यह है: B.
पीले रंग से हाइलाइट किया गया भाग रुके हुए चरण को दर्शाता है। एक टेस्ट केस में कई ब्रेकपॉइंट हो सकते हैं।
स्टेप
RSI स्टेप यह कमांड रुके हुए टेस्ट केस के बाद अगली लाइन को चलाता है। स्क्रिप्ट को एक-एक कमांड करके चलाने के लिए इसे ब्रेकपॉइंट के साथ इस्तेमाल करें।
स्टेप पर क्लिक करने से पहले। टेस्ट केस लाइन पर रुका हुआ है clickAndWait | login. |
|
स्टेप पर क्लिक करने के बाद। RSI clickAndWait | login कमांड चलती है और अगली कमांड पर निष्पादन रुक जाता है (verifyTitle | Sign-on: Mercury Toursअगली पंक्ति बिना ब्रेकपॉइंट के भी रुक जाती है — यही स्टेप का उद्देश्य है। |
स्रोत दृश्य में अन्य प्रारूपों का उपयोग करते समय ध्यान देने योग्य महत्वपूर्ण बातें
Selenium IDE 1.x केवल HTML प्रारूप के साथ ही विश्वसनीय रूप से काम करता है - अन्य प्रारूप अभी भी प्रायोगिक चरण में हैं। गैर-HTML स्रोत दृश्य में परीक्षण बनाना या संपादित करना अनुशंसित नहीं है। संस्करण 1.9.1 तक ज्ञात समस्याएं निम्नलिखित हैं:
- एचटीएमएल पर वापस जाए बिना आप प्लेबैक का उपयोग नहीं कर सकते या टेबल व्यू पर वापस नहीं जा सकते।
- सोर्स व्यू में कमांड जोड़ने का सबसे सुरक्षित तरीका उन्हें रिकॉर्ड करना है।
- सोर्स व्यू में मैन्युअल रूप से किए गए संपादन दूसरे फॉर्मेट में बदलने पर नष्ट हो जाते हैं।
- आप सोर्स व्यू में टेस्ट केस सेव कर सकते हैं, लेकिन Selenium IDE इसे पुनः खोलने में विफल हो सकता है।
सेलेनीज़ पाठों को अन्य भाषाओं में परिवर्तित करने का अनुशंसित तरीका यह है: फ़ाइल > टेस्ट केस को इस रूप में निर्यात करें… मेन्यू, सोर्स व्यू नहीं।

.png)
.png)
.png)














.png)










.png)
.png)






