2021 का महत्वपूर्ण सेलेनियम वेबड्राइवर कमांड

ट्यूटोरियल की इस श्रृंखला में हम लेखों के नीचे दिए गए क्रम में सेलेनियम वेबड्राइवर के अग्रिम आदेशों के लिए बहुत ही मूल सेलेनियम कमांड से शुरू होने वाले सभी संपूर्ण सेलेनियम वेबड्राइवर कमांड के बारे में जानेंगे: 

बेसिक सेलेनियम वेबड्राइवर आदेश: 

इंटरमीडिएट सेलेनियम वेबड्राइवर आज्ञाओं -प्रशन:

एडवांस सेलेनियम वेबड्राइवर कमांड्स -प्रशन:

सेलेनियम मूल आदेश- उत्तर: 

सेलेनियम वेबड्राइवर कमांड
सेलेनियम वेबड्राइवर कमांड

सेलेनियम url पर नेविगेट करें:

सेलेनियम वेबड्राइवर में अगर हम अपने ब्राउज़र के माध्यम से किसी विशिष्ट URL को नेविगेट या खोलना चाहते हैं तो हम इसे दो अलग-अलग तरीकों से कर सकते हैं एक है () विधि के साथ और दूसरा एक नेविगेट के साथ, हम इस पर एक नज़र डालेंगे कि यह कैसे हो सकता है किया हुआ : 

सार्वजनिक शून्य getUrl (स्ट्रिंग url) {कोशिश करें {driver.get (url); BASE_LOGGER.info ("यूआरएल में सफलतापूर्वक नेविगेट किया गया:" + url); } पकड़ (अपवाद पूर्व) {स्ट्रिंग अपवादडेटा = ex.getCause ()। getMessage (); BASE_LOGGER.error("URL पर नेविगेट करने में असमर्थ:" + url + "त्रुटि के साथ:" +ExceptionData); } }

यूआरएल को नेविगेट करने के लिए आप जो कोड लिख सकते हैं, वह है Driver.get ("http://example.com") जबकि ड्राइवर सेलेनियम वेबड्राइवर इंटरफ़ेस का वेबड्राइवर उदाहरण है।

सेलेनियम में सभी ब्राउज़र को लॉन्च करने के तरीके को समझने के लिए यहां जाएं।

सेलेनियम में आंतरिक रूप से कैसे काम करता है: 

एक बार जब यह () विधि आपके परीक्षण स्क्रिप्ट से कॉल हो जाती है तो वेबड्राइवर संदर्भ अर्थात ड्राइवर पेज लोड होने तक प्रतीक्षा करेगा, वास्तव में प्राप्त () विधि आंतरिक रूप से ट्रिगर होती है कार्यभार पृष्ठ पूरी तरह से लोड होने के बाद जो आपके ड्राइवर संदर्भ को हैंडल लौटाता है।

सेलेनियम आगे और पीछे नेविगेट करें:

ब्राउज़र इतिहास के साथ url पर नेविगेट करने के लिए एक और तरीका है नेविगेट () विधि का उपयोग करके, जहां सेलेनियम ब्राउज़र के इतिहास का उपयोग आगे नेविगेट करने या आपके साथ संबंधित URL जैसे: 

सेलेनियम आगे नेविगेट

सार्वजनिक शून्य नेविगेटफॉरवर्ड () {कोशिश {ड्राइवर.नेविगेट ()। आगे (); BASE_LOGGER.info ("सफलतापूर्वक आगे की ओर नेविगेट किया गया"); } पकड़ (अपवाद पूर्व) {स्ट्रिंग अपवादडेटा = ex.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि के साथ नेविगेट करने में असमर्थ:" + अपवादडेटा); } }

सेलेनियम वापस नेविगेट: 

सार्वजनिक शून्य नेविगेटबैक () {कोशिश करें {driver.navigate ()। बैक (); BASE_LOGGER.info ("सफलतापूर्वक वापस URL पर नेविगेट किया गया"); } पकड़ (अपवाद पूर्व) {स्ट्रिंग अपवादडेटा = ex.getCause ()। getMessage (); BASE_LOGGER.error ("यूआरएल पर वापस नेविगेट करने में असमर्थ: त्रुटि के साथ:" + अपवाद डेटा); } }

सेलेनियम ताज़ा पृष्ठ

हम सेलेनियम नेविगेट से ताज़ा () विधि का उपयोग कर सकते हैं 

सार्वजनिक शून्य सेलेनियम रीफ्रेशपेज () {कोशिश करें {driver.navigate ()। ताज़ा करें (); BASE_LOGGER.info ("सेलेनियम रिफ्रेश पेज सफलतापूर्वक किया गया"); } पकड़ (अपवाद पूर्व) {स्ट्रिंग अपवादडेटा = ex.getCause ()। getMessage (); BASE_LOGGER.error ("सेलेनियम रीफ़्रेश पेज करने में असमर्थ: त्रुटि के साथ:" + अपवाद डेटा); } }

सेलेनियम क्लिक करें

सेलेनियम क्लिक के साथ किसी भी क्लिक ऑपरेशन को करने के लिए हमें नीचे दिए गए दृष्टिकोण में क्लिक () नामक विधि का उपयोग करना होगा, सेलेनियम में किसी भी वेबलेमेंट पर क्लिक ऑपरेशन करने के अन्य तरीके हैं अर्थात जावास्क्रिप्ट का उपयोग करके जो स्थितियों के आधार पर कभी-कभी बहुत उपयोगी होता है। जहाँ आपका सामान्य सेलेनियम क्लिक विधि बहुत स्थिर तरीके से काम कर रही है, वहाँ कुछ मामले हैं जहाँ आप IE ब्राउज़र के साथ स्वचालित कर रहे हैं और यदि परीक्षण के तहत वेब अनुप्रयोग बूटस्ट्रैप जेएस के कुछ प्रकार में बना है तो सामान्य सेलेनियम क्लिक विधि कुछ समय के लिए काम कर सकती है , उन मामलों में आप जावास्क्रिप्ट क्लिक विधि का उपयोग कर सकते हैं।

सार्वजनिक शून्य सुरक्षित क्लिक करें (तत्व द्वारा) {कोशिश करें {driver.findElement (तत्व)। क्लिक करें (); BASE_LOGGER.info ("लोकेटर के लिए सुरक्षित क्लिक ऑपरेशन किया गया है:" + String.valueOf (तत्व)); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "तत्व पर सेफक्लिक करते समय:" + तत्व); } }

आप findElement () नामक विधि में विभिन्न लोकेटर रणनीतियों (यानी xpath, नाम, सीएसएस आदि) का उपयोग करके तत्व को पास कर सकते हैं और फिर ऊपर की तरह क्लिक () विधि ऑपरेशन कर सकते हैं।

सेलेनियम प्रेषक

जब हमें सेलेनियम के माध्यम से कुछ पाठ बॉक्स में कुछ पाठ दर्ज करने की आवश्यकता होती है, तो हम सेलेनियम प्रेषक का उपयोग करते हैं () विधि को "पाठ में प्रवेश किया जा रहा है" विधि के पैरामीटर के रूप में sendKeys ("पाठ दर्ज किया जाए") और इसी तरह क्लिक () विधि यह विधि किसी वेबइमेन्ट (यहां वेब टेक्स्ट बॉक्स) पर भी लागू होती है, इसलिए हमें टेक्स्ट को उस टेक्स्ट बॉक्स में भेजने के लिए Driver.findElement का उपयोग करना होगा।

नमूना कोड इस प्रकार है: 

सार्वजनिक शून्य enterTextIntoElement (तत्व द्वारा, स्ट्रिंग textToBeEntered) {कोशिश करें {driver.findElement(element).sendKeys(textToBeEntered); BASE_LOGGER.info ("enterTextIntoElement ऑपरेशन लोकेटर के लिए किया गया है:" + String.valueOf (तत्व)); } पकड़ (अपवाद पूर्व) {स्ट्रिंग अपवादडेटा = ex.getCause ()। getMessage (); BASE_LOGGER.error ("enterTextIntoElement ऑपरेशन लोकेटर के लिए विफल हो गया है:" + String.valueOf (तत्व) + "अपवाद के साथ अर्थात:" + अपवादडेटा); } }

सेलेनियम स्पष्ट पाठ क्षेत्र

यदि हम पहले से भरे हुए टेक्स्टफील्ड से कोई डेटा क्लियर करना चाहते हैं, तो हम स्पष्ट () नामक विधि का उपयोग कर सकते हैं और सेलेनियम में कीज़ क्लास की मदद से हम ऐसा कर सकते हैं, जिसके माध्यम से हम कीबोर्ड शॉर्टकट के साथ सीधे कीबोर्ड संचालन को ले सकते हैं :

स्पष्ट () पद्धति की सहायता से डेटा को साफ़ करने के लिए हम नीचे के दृष्टिकोण में लिख सकते हैं: 

सार्वजनिक शून्य स्पष्ट फ़ील्ड (तत्व द्वारा) {कोशिश करें {driver.findElement (तत्व)। स्पष्ट (); BASE_LOGGER.info ("लोकेटर के लिए ClearField ऑपरेशन किया गया है:" + String.valueOf (तत्व)); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error("ClearField ऑपरेशन लोकेटर के लिए विफल हो गया है:" + String.valueOf(element) + "अपवाद के साथ अर्थात:" +ExceptionData); } }

कीज़ क्लास का उपयोग करके हम निम्नलिखित दृष्टिकोण में टेक्स्ट फ़ील्ड को भी साफ़ कर सकते हैं।

सेलेनियम अधिकतम खिड़की

ब्राउज़र स्वचालन के साथ काम करते समय अगर हमें सेलेनियम में विंडो को अधिकतम करना है तो हम निम्नलिखित तरीकों का उपयोग कर सकते हैं: 

सेलेनियम अधिकतम विंडो का उपयोग करके अधिकतम करें () विधि:  

सार्वजनिक शून्य अधिकतमविंडो () {कोशिश करें {driver.manage ()। विंडो ()। अधिकतम करें (); BASE_LOGGER.info ("विंडो को सफलतापूर्वक बढ़ाया गया"); } पकड़ें (अपवाद ई) { BASE_LOGGER.info ("विंडो को अधिकतम करते समय अपवाद उत्पन्न हुआ:" + e.getCause ()। getMessage ()); } }

क्रोमब्रोसर के लिए क्रोमियम का उपयोग करके सेलेनियम अधिकतम विंडो:

नीचे दी गई विधि का उपयोग करके हम अधिकतम मोड में वेबड्राइवर के लिए एक क्रोम ब्राउज़र उदाहरण सेट कर रहे हैं और लौटा हुआ ड्राइवर सत्र स्क्रिप्ट के अनुसार आगे वेब ऑपरेशन के लिए एक ही सुविधा (यानी अधिकतम विंडो) जारी रखेगा।

सार्वजनिक वेबड्राइवर openBrowserInMaximizeWindow () {कोशिश करें {ChromeOptions विकल्प = नया ChromeOptions (); options.addArguments ("स्टार्ट-मैक्सिमाइज्ड"); वेबड्राइवर ड्राइवर = नया क्रोमड्राइवर (विकल्प); }कैच (अपवाद ई) { BASE_LOGGER.error ("अपवाद का सामना करना पड़ा:" + e.getCause ()। getMessage ()); } वापसी चालक; }

सेलेनियम कम से कम खिड़की

हम निम्नलिखित दृष्टिकोण के साथ सेलेनियम न्यूनतम () कमांड का उपयोग करके विंडो को कम कर सकते हैं:  

सार्वजनिक शून्य न्यूनतमविंडो () {कोशिश करें {driver.manage ()। विंडो ()। छोटा करें (); BASE_LOGGER.info ("विंडो को सफलतापूर्वक छोटा किया गया"); } पकड़ (अपवाद ई) { BASE_LOGGER.info ("विंडो को छोटा करते समय अपवाद उत्पन्न हुआ:" + e.getCause ()। getMessage ()); } }

सेलेनियम करीब ब्राउज़र:

सेलेनियम में ब्राउज़र को बंद करने के लिए हम नीचे के दृष्टिकोण में करीब () विधि का उपयोग करते हैं: 

सार्वजनिक शून्य बंद करेंCurrentWindow () {कोशिश करें {अगर (शून्य! = ड्राइवर) {driver.close (); BASE_LOGGER.info ("वर्तमान विंडो/ब्राउज़र को सफलतापूर्वक बंद किया गया"); } और { BASE_LOGGER.info ("वर्तमान विंडो/ब्राउज़र इंस्टेंस को इसके NULL के रूप में बंद करने में असमर्थ"); } } पकड़ें (अपवाद ई) { BASE_LOGGER.info ("वर्तमान विंडो/ब्राउज़र बंद करते समय अपवाद हुआ"); } }

सेलेनियम ब्राउज़र छोड़ दिया

सेलेनियम में सभी ब्राउज़र इंस्टेंसेस को छोड़ने के लिए हम नीचे दिए गए दृष्टिकोण में () विधि का उपयोग करते हैं: 

सार्वजनिक शून्य छोड़ें ब्राउजर () {कोशिश करें {अगर (शून्य! = ड्राइवर) {driver.quit (); BASE_LOGGER.info ("ब्राउज़र से सफलतापूर्वक बाहर निकलें"); } और { BASE_LOGGER.info ("ब्राउज़र को इसके नल के रूप में छोड़ने में असमर्थ"); } } पकड़ें (अपवाद ई) { BASE_LOGGER.error ("ब्राउज़र छोड़ते समय अपवाद हुआ"); } }

सेलेनियम में Driver.close () और driver.quit () के बीच अंतर:

इंटरमीडिएट सेलेनियम वेबड्राइवर कमांड - जवाब:

सेलेनियम में गिरावट:

वेबपृष्ठ DOM संरचना में, ड्रॉपडाउन HTML के चुनिंदा या इनपुट Tage द्वारा कार्यान्वित किया जाता है। सेलेनियम के साथ ड्रॉपडाउन के साथ काम करें और कुछ प्रदर्शन करें। 

ड्रॉपडाउन पर वेब संचालन, हमें सेलेनियम वेबड्राइवर्स एपीआई से "चयन" वर्ग का उपयोग करने की आवश्यकता है।org.openqa.selenium.support.uiसेलेनियम वेबड्राइवर का पैकेज। 

सेलेनियम में ड्रॉपडाउन के चयन के साथ काम करते समय 2 अलग-अलग समस्या कथन या प्रश्न हैं: 

एक समय में एक ड्रॉपडाउन में एकल तत्व का चयन

नीचे के दृष्टिकोण में हम ड्रॉपडाउन के साथ काम कर सकते हैं:  

पहला कदम :

आपको नीचे दिए गए तरीके से क्लास ऑब्जेक्ट निर्माण का उपयोग करके ड्रॉपडाउन वेबइलमेंट के लिए एक हैंडल बनाना होगा:

चयन करें = नया चयन करें (WebElement webelement);

दूसरा चरण : 

सेलेनियम में ड्रॉपडाउन से मूल्य का चयन करने के लिए 3 अलग-अलग दृष्टिकोण हैं, हम सेलेनियम में ड्रॉपडाउन से मूल्य का चयन करने के लिए नीचे दिए गए किसी भी तरीके का उपयोग कर सकते हैं: 

यहाँ नीचे दृष्टिकोण है हम ड्रॉपडाउन से मूल्य का चयन करने के लिए ले जा सकते हैं: 

सेलेनियम में गिरावट - दृष्टिकोण एक: 
दृष्टिकोण एक में आप का उपयोग कर सकते हैं पाठ जो दिखाई दे रहा है वेब्लेमेंट के वांछित चयन।

सार्वजनिक शून्य चयन फ्रॉमड्रॉपडाउनबायटेक्स्ट (लोकेटर द्वारा, स्ट्रिंग दृश्यमान टेक्स्ट) {कोशिश करें {ड्रॉपडाउन एलिमेंट का चयन करें = नया चयन करें (ड्राइवर.फाइंड एलिमेंट (लोकेटर)); dropDownElement.selectByVisibleText(visibleText); BASE_LOGGER.info ("SelectFromDropDownByText ऑपरेशन लोकेटर के लिए किया गया है:" + String.valueOf (लोकेटर)); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "तत्व पर SelectFromDropDownByText करते समय:" + लोकेटर); } }

उपरोक्त विधि में आप ड्रॉपडाउन के लोकेटर को पास कर सकते हैं और दिखाई देने वाला टेक्स्ट जिसे आप ड्रॉपडाउन में से चुनना चाहते हैं तो यह वांछित ऑपरेशन करेगा, अपेक्षित ड्रॉपडाउन तत्व का चयन कर रहा है। 

सेलेनियम में गिरावट - दृष्टिकोण दो:

इस दृष्टिकोण में आप ड्रॉपडाउन से वांछित WebElement के चयन के मूल्य विशेषता का उपयोग करके वेब्लीमेंट का चयन करें: 

सार्वजनिक शून्य चयन फ्रॉमड्रॉपडाउनबायवैल्यू (लोकेटर द्वारा, स्ट्रिंग दृश्यमान टेक्स्ट) {कोशिश करें {ड्रॉपडाउन एलिमेंट का चयन करें = नया चयन करें (ड्राइवर.फाइंड एलिमेंट (लोकेटर)); dropDownElement.selectByValue ("वांछित वेबलेमेंट का मूल्य"); BASE_LOGGER.info ("selectFromDropDownByValue ऑपरेशन लोकेटर के लिए किया गया है:" + String.valueOf (लोकेटर)); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "तत्व पर selectFromDropDownByValue करते समय:" + लोकेटर); } }

उपरोक्त विधि में आप ड्रॉपडाउन के लोकेटर को पास कर सकते हैं और WebElement की वैल्यू विशेषता, जिसे आप ड्रॉपडाउन में से चुनना चाहते हैं, तब यह वांछित ऑपरेशन करेगा, अपेक्षित ड्रॉपडाउन तत्व का चयन कर रहा है। 

सेलेनियम में गिरावट - दृष्टिकोण तीन:

इस दृष्टिकोण में आप ड्रॉपडाउन से वांछित WebElement के चयन के सूचकांक (HTML में टैग में WebElement का क्रम) का उपयोग करके वेलेमेंट का चयन करते हैं, सूचकांक आम तौर पर 0 से शुरू होता है:

सार्वजनिक शून्य चयन फ्रॉमड्रॉपडाउनबायइंडेक्स (लोकेटर द्वारा, स्ट्रिंग दृश्यमान टेक्स्ट) {कोशिश करें {ड्रॉपडाउन एलिमेंट का चयन करें = नया चयन करें (ड्राइवर.फाइंड एलिमेंट (लोकेटर)); dropDownElement.selectByIndex(5); BASE_LOGGER.info ("selectFromDropDownByIndex ऑपरेशन लोकेटर के लिए किया गया है:" + String.valueOf (लोकेटर)); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "तत्व पर selectFromDropDownByIndex करते समय:" + लोकेटर); } }

उपरोक्त विधि में आप वेबएमेंट के ड्रॉपडाउन और इंडेक्स / ऑर्डर (ड्रॉपडाउन के सिलेक्ट टैग में) को पास कर सकते हैं, जिसमें से आप ड्रॉपडाउन से चयन करना चाहते हैं, फिर यह वांछित ऑपरेशन करेगा, अपेक्षित ड्रॉपडाउन तत्व का चयन कर रहा है। ।

एक बार में एक ड्रॉपडाउन में कई तत्वों का चयन 

यह HTML DOM संरचना और कार्यान्वयन पर निर्भर करता है कि किसी भी ड्रॉपडाउन तत्व को तत्वों के बहु चयन की अनुमति है या नहीं। सेलेनियम में कई तत्वों का चयन करने के लिए हमें दो चरणों का पालन करना होगा: 

पहला कदम : जाँचें कि क्या ड्रॉपडाउन वेबएलेटमेंट विधि का उपयोग करके बहु चयन की अनुमति देता है isMultiple (), यह सही या गलत के रूप में बूलियन देता है।

दूसरा चरण : यदि उपरोक्त चरण सही है, तो ड्रॉपडाउन बहु चयन की अनुमति देता है। और इसके बाद हम उपरोक्त मान का उपयोग किसी भी / सभी तीन अलग-अलग तरीकों से कई मानों का चयन करने और किसी भी वांछित संचालन को करने के लिए कर सकते हैं।

तो यहाँ पर निष्कर्ष निकालने के लिए नमूना कोड है:

WebElement तत्व =driver.findElement(By.xpath ("ड्रॉपडाउन का XPATH")); चयन करें एकाधिक = नया चयन करें (तत्व); अगर (selectMultiple.isMultiple ()){ selectMultiple.selectByIndex(1); SelectMultiple.selectByIndex(2); // इसी तरह हम ड्रॉपडाउन तत्वों का चयन करने के लिए अन्य तरीकों/विधि का उपयोग कर सकते हैं जैसे कि SelectByVisibleText या selectByValue}

सेलेनियम में खींचें और छोड़ें :

ट्यूटोरियल के सेगमेंट में हम सेलेनियम में ड्रैग एंड ड्रॉप के विभिन्न अलग-अलग तरीकों को सीखेंगे जैसे: 

सेलेनियम में ड्रैग एंड ड्रॉप क्या है और इसका उपयोग कहां किया गया है: 

ड्रैग एंड ड्रॉप एक विशिष्ट ऑपरेशन है जब उपयोगकर्ता आपके वेब एप्लिकेशन पर नेविगेट करते हैं और कुछ webelement पर ऑपरेशन (माउस चाल द्वारा खींचना) करने की कोशिश करते हैं जो एप्लिकेशन पर स्वतंत्र रूप से आगे बढ़ सकता है और उस एप्लिकेशन के वेबपेज के कुछ अन्य स्थान पर गिराया जा सकता है। 

यहां जिस तत्व को खींचा जा रहा है, उसे स्रोत WebElement कहा जाता है और जिस तत्व को गिराया जा रहा है उसे गंतव्य WebElement कहा जाता है। 

सेलेनियम के साथ स्वचालन के माध्यम से उपरोक्त परिदृश्यों को करने के लिए हमें सेलेनियम द्वारा प्रदान की गई कार्यक्षमता को खींचने और छोड़ने की आवश्यकता है।

सेलेनियम में खींचें और ड्रॉप के विभिन्न दृष्टिकोण:

सेलेनियम में बनाएँ और ड्रॉप का उपयोग करें बिल्ड () विधि: 

कैसे बनाएँ () विधि आंतरिक रूप से काम करती है :

निर्माण () सेलेनियम में क्रिया वर्ग से विधि जो पैकेज का हिस्सा है org.openqa.selenium.interactions आंतरिक रूप से एक समग्र क्रियाएं उत्पन्न करता है 

बिल्ड () विधि को कॉल करने से पहले सभी क्रियाओं को संयोजित या ट्रिगर किया गया है।

एक उदाहरण के लिए :

नई क्रियाएँ (चालक)। क्लिक करें और होल्ड करें (sourceElement)। MoveToElement (गंतव्य एलिमेंट)। रिलीज़ (गंतव्य एलिमेंट)। बिल्ड ();

ड्रैग एंड ड्रॉप ऑपरेशन बिल्ड को करने के लिए उपरोक्त कथन का उपयोग पिछले कार्यों जैसे clickAndHold, MoveToElement और रिलीज के तरीकों को बांधने के लिए किया जा रहा है।

यहाँ ऐक्शन क्लास के बिल्ड मेथड का उपयोग करके सेलेनियम में ड्रैग एंड ड्रॉप करने के लिए नीचे दिया गया कोड स्निपेट है: 

सार्वजनिक शून्य ड्रैग एंडड्रॉप (स्रोत द्वारा, गंतव्य द्वारा) {कोशिश करें {वेबएलिमेंट स्रोत एलिमेंट = ड्राइवर.फाइंड एलिमेंट (स्रोत); वेबएलिमेंट डेस्टिनेशन एलिमेंट = ड्राइवर।फाइंड एलिमेंट (गंतव्य); क्रियाएँ निर्माता = नई क्रियाएँ (चालक); एक्शन ड्रैग एंडड्रॉप = बिल्डर। क्लिक एंडहोल्ड (सोर्स एलिमेंट)। मूव टॉइलेमेंट (डेस्टिनेशन एलिमेंट) .रिलीज (डेस्टिनेशन एलिमेंट)। बिल्ड (); ड्रैगएंडड्रॉप.परफॉर्म (); BASE_LOGGER.info ("ड्रैग एंड ड्रॉप कार्रवाई सफलतापूर्वक की गई"); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "ड्रैगएंडड्रॉप करते समय"); } }

DragAndDrop () विधि का उपयोग करके सेलेनियम में खींचें और छोड़ें:

आंतरिक रूप से कैसे काम करता है DragAndDrop () विधि:

dragAndDrop (sourceWebElement, गंतव्यWebElement) विधि मूल रूप से दो तर्कों को लेती है एक स्रोत है और दूसरा एक गंतव्य webelement है। 
DragAndDrop की आवश्यकता को हटा देता है clickAndHold, MoveToElement, Action class में रिलीज़ तरीके, यह आंतरिक रूप से उन सभी परिदृश्यों को संभालता है जो इन विधियों द्वारा किए जाते हैं।

यहां ड्रैगएंडड्रॉप को करने के लिए नीचे दिया गया कोड स्निपेट है। ड्रैगएंडड्रॉप:

सार्वजनिक शून्य ड्रैगएंडड्रॉपऑप्स (स्रोत द्वारा, गंतव्य द्वारा) {कोशिश करें {वेबएलिमेंट स्रोत एलिमेंट = ड्राइवर.फाइंड एलीमेंट (स्रोत); वेबएलिमेंट डेस्टिनेशन एलिमेंट = ड्राइवर।फाइंड एलिमेंट (गंतव्य); क्रियाएँ निर्माता = नई क्रियाएँ (चालक); Builder.dragAndDrop(sourceElement,destinationElement).perform(); BASE_LOGGER.info ("ड्रैग एंड ड्रॉप एक्शन सफलतापूर्वक किया गया"); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "ड्रैगएंडड्रॉप करते समय"); } }

DragAndDropBy () पद्धति का उपयोग करके सेलेनियम में खींचें और छोड़ें:

ड्रैगएंडड्रॉपबाय (वेबइलमेंट सोर्स, इंट एक्सऑफसेट, इंट योफसेट) विधि आंतरिक रूप से कैसे काम करती है:

विधि dragAndDropBy () में 3 तर्क दिए गए हैं: 

Source WebElement: वह तत्व जो स्रोत तत्व को खींचा जाता है 

xOffset: गंतव्य स्थान की क्षैतिज चाल ऑफसेट 

yOffset: गंतव्य स्थान की ऊर्ध्वाधर चाल ऑफसेट 

आंतरिक रूप से यह विधि स्रोत को वशीकरण ले जाती है और इसे गंतव्य स्थान पर ले जाती और छोड़ती है। यदि आप किसी भी पिक्सेल स्थानों के लिए किसी भी स्रोत webelement को स्थानांतरित करना चाहते हैं तो यह विधि उपयोगी है।

नीचे सेलेनियम में DragAndDropBy के लिए कोड स्निपेट है:

सार्वजनिक शून्य ड्रैगएंडड्रॉपबायऑप्स (स्रोत द्वारा, int xOffSet, int yOffSet) {कोशिश करें {वेबएलिमेंट स्रोत एलिमेंट = ड्राइवर.फाइंड एलिमेंट (स्रोत); क्रियाएँ निर्माता = नई क्रियाएँ (चालक); Builder.dragAndDropBy(sourceElement,xOffSet,yOffSet).build().perform(); BASE_LOGGER.info ("ड्रैग एंड ड्रॉप एक्शन सफलतापूर्वक किया गया"); } पकड़ (अपवाद ई) {स्ट्रिंग अपवादडेटा = e.getCause ()। getMessage (); BASE_LOGGER.error ("त्रुटि का सामना करना पड़ा यानी:" + अपवादडेटा + "ड्रैगएंडड्रॉप करते समय"); } }

इंटरमीडिएट सेलेनियम वेबड्राइवर कमांड के बाकी उन्नत सेटों के लिए यहां जाएं।

एडवांस सेलेनियम वेबड्राइवर कमांड्स -जवाब:

सेलेनियम में डबल क्लिक करें :

ऑपरेशन को दोहराने के लिए यानी सेलेनियम में डबल क्लिक माउस के माध्यम से हमें सेलेनियम में एक्शन क्लास के माध्यम से डबल क्लिक करने की आवश्यकता है और हम इसे नीचे दिए गए दृष्टिकोण में कर सकते हैं: 

सार्वजनिक शून्य डबलक्लिक (लोकेटर द्वारा) {कोशिश करें {वेबएलिमेंट एलिमेंट = ड्राइवर.फाइंड एलिमेंट (लोकेटर); क्रियाएँ क्रियाएँ = नई क्रियाएँ (चालक); क्रियाएँ। डबलक्लिक (तत्व)। प्रदर्शन (); BASE_LOGGER.info ("तत्व पर डबल क्लिक किया गया:" + लोकेटर); } पकड़ें (StaleElementReferenceException e) { BASE_LOGGER.error ("तत्व पृष्ठ दस्तावेज़ से संलग्न नहीं है" + e.getCause ()। getMessage ()); } पकड़ें (NoSuchElementException e) { BASE_LOGGER.error("Element" + locator + "DOM में नहीं मिला" + e.getCause().getMessage()); } पकड़ (अपवाद ई) { BASE_LOGGER.error("Element" + locator + "क्लिक करने योग्य नहीं था" + e.getCause().getMessage()); } }

उपरोक्त कोड स्निपेट एक ऐसी विधि है जो मूल रूप से लोकेटर यानी WebElement के रूप में एक तर्क लेती है जिस पर डबल क्लिक करना पड़ता है।

सेलेनियम में संदर्भ:

माउस के माध्यम से संदर्भ क्लिक या राइट क्लिक ऑपरेशन को दोहराने के लिए हमें सेलेनियम में क्रियाएँ वर्ग के माध्यम से संदर्भ क्लिक विधि करने की आवश्यकता है और हम इसे नीचे दिए गए दृष्टिकोण में कर सकते हैं: 

सार्वजनिक शून्य राइटक्लिक (लोकेटर द्वारा) {कोशिश करें {वेबएलिमेंट एलिमेंट = ड्राइवर। फाइंड एलीमेंट (लोकेटर); क्रियाएँ क्रियाएँ = नई क्रियाएँ (चालक); क्रियाएँ। संदर्भ क्लिक (तत्व)। प्रदर्शन (); BASE_LOGGER.info ("संदर्भ प्रदर्शन किया तत्व पर क्लिक करें:" + लोकेटर); } पकड़ें (StaleElementReferenceException e) { BASE_LOGGER.error ("तत्व पृष्ठ दस्तावेज़ से संलग्न नहीं है" + e.getCause ()। getMessage ()); } पकड़ें (NoSuchElementException e) { BASE_LOGGER.error("Element" + locator + "DOM में नहीं मिला" + e.getCause().getMessage()); } पकड़ (अपवाद ई) { BASE_LOGGER.error("Element" + locator + "क्लिक करने योग्य नहीं था" + e.getCause().getMessage()); } }

विस्तृत एडवांस सेलेनियम वेबड्राइवर कमांड के लिए यहां जाएं सेलेनियम में क्रियाएँ वर्ग और इसके कार्यान्वयन यहां देखें।

महत्वपूर्ण पूछे जाने वाले प्रश्न: 

सेलेनियम में प्रबंधन () क्या है?

Driver.manage () WebDriver.Options Interface के कार्यान्वयन का एक संदर्भ देता है। इंटरफ़ेस इंटरफ़ेस ब्राउज़र मेनू में क्रियाओं को प्रबंधित और संभालने के लिए एक इंटरफ़ेस है जैसे: 

के संपूर्ण सेटों के लिए सेलेनियम साक्षात्कार प्रश्न-राजनीतिक और उन्नत सेट यहाँ जाएँ।

निष्कर्ष:

ट्यूटोरियल के इस भाग में हमने बेसिक को कवर किया सेलेनियम वेबड्राइवर आदेश, जानने के लिए यहां क्लिक करें इंटरमीडिएट और एडवांस सेलेनियम वेबड्राइवर कमांड. स्क्रैच से सेलेनियम सीखने के लिए यहां क्लिक करें।

एक टिप्पणी छोड़ दो