सेलेनियम वेबड्राइवर आर्किटेक्चर: अधिकांश शुरुआती नहीं जानते

हम साथ शुरू करने जा रहे हैं सेलेनियम ट्यूटोरियल काली किताब संपूर्ण और अलग दृष्टिकोण में, सेलेनियम ट्यूटोरियल के इस पहले खंड में, हम चर्चा करेंगेसेलेनियम वेबड्राइवर आर्किटेक्चर, सेलेनियम वेबड्राइवर, सेलेनियम वेबड्राइवर अवलोकन, सेलेनियम का संक्षिप्त इतिहास, सेलेनियम के फायदे, सेलेनियम की सीमाएं, सेलेनियम घटक और कुछ अक्सर पूछे जाने वाले प्रश्न।

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

सेलेनियम एक ओपन सोर्स टेक्नोलॉजी या फ्रेमवर्क है जिसके माध्यम से हम वेब आधारित अनुप्रयोगों को स्वचालित कर सकते हैं। सेलेनियम मल्टी ब्राउज़र टेस्टिंग का समर्थन करता है, जावा, रूबी, पर्ल, पायथन जैसी कई भाषाओं का भी समर्थन करता है। यह प्लेटफॉर्म के हिस्से के रूप में विंडोज, लिनक्स, मैकओएस आदि जैसे विभिन्न मल्टीपल प्लेटफॉर्म को सपोर्ट करता है।

सेलेनियम के बारे में संक्षिप्त इतिहास:

सेलेनियम शुरू में 2004 में जेसन हग्गिन्स द्वारा एक आंतरिक उपकरण से विकसित किया गया था विचार काम करता है.

बाद में 2007 के वर्ष में, Huggins ने Google को संगठन में शामिल किया, और जेनिफर बेवन जैसे अन्य लोगों के साथ, उन्होंने सेलेनियम के शुरुआती बदलावों में से एक के डिजाइन और विकास के साथ जारी रखा सेलेनियम आर.सी.। इसी तरह की समयावधि के दौरान, थॉटवर्क्स के साइमन स्टीवर्ट नाम के एक अन्य व्यक्ति ने वेबड्राइवर के रूप में एक अग्रिम वेब ब्राउज़र ऑटोमेशन टूल विकसित किया। 

2008 में, ThoughtWorks से फिलिप हनरिगू के रूप में नामित एक व्यक्ति "सेलेनियम ग्रिल" के रूप में ज्ञात दूरस्थ स्वचालन अवधारणाओं के साथ आया था।

2009 में, Google टेस्ट ऑटोमेशन कॉन्फ्रेंस में, दोनों प्रोजेक्ट्स को मर्ज करने का निर्णय लिया गया और इसे सेलेनियम वेबड्राइवर या सेलेनियम 2.0 नाम दिया गया।

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

उ। खुला स्रोत:

सेलेनियम एक खुला स्रोत प्रौद्योगिकी / ढांचा है, इसलिए विशाल सामुदायिक सहायता उपलब्ध है जहां विकास और सुधार का दायरा तेजी से और विशाल है, इसके खुले स्रोत के रूप में आप किसी भी विशिष्ट सुविधा को लागू कर सकते हैं जिसे आपको अपने काम के हिस्से के रूप में और ओपन में योगदान करना चाहिए स्रोत समुदाय 

B. बहु प्रोग्रामिंग भाषा समर्थित:

सेलेनियम व्यापक रूप से इस्तेमाल की जाने वाली भाषाओं द्वारा समर्थित है; यह विभिन्न प्रोग्रामिंग भाषा बाइंडिंग के साथ आता है, इसलिए आप अपनी जरूरत और विशेषज्ञता के अनुसार सेलेनियम के साथ काम करने के लिए अपनी अनुकूल भाषा चुन सकते हैं।

सेलेनियम नीचे प्रोग्रामिंग भाषाओं के लिए समर्थन प्रदान करता है: 

  • जावा 
  • C#
  • पर्ल
  • अजगर
  • माणिक  
  • जावास्क्रिप्ट

सी। प्लेटफार्म स्वतंत्र:

सेलेनियम प्लेटफ़ॉर्म-इंडिपेंडेंट है, जिससे आप अपने वेब एप्लिकेशन को किसी भी प्लेटफ़ॉर्म और किसी भी ऑपरेटिंग सिस्टम यानी विंडोज, लिनक्स, मैकबुक आदि पर स्वचालित कर सकते हैं।

डी। क्रॉस ब्राउज़र परीक्षण क्षमता

सेलेनियम आपके वेब अनुप्रयोगों के लिए क्रॉस ब्राउज़र परीक्षण क्षमता का समर्थन करता है; आप सेलेनियम के साथ अपने टेस्ट सूट को कई ब्राउज़रों जैसे फ़ायरफ़ॉक्स, क्रोम, IE, सफारी आदि में चला सकते हैं।

ई। क्रॉस डिवाइस परीक्षण क्षमता

सेलेनियम टेस्ट ऑटोमेशन का उपयोग विभिन्न वेब डिवाइस जैसे कि Android, IOS पर मोबाइल वेब एप्लिकेशन टेस्टिंग ऑटोमेशन के लिए किया जाता है। 

एफ। रिमोट या क्लाउड निष्पादन:

सेलेनियम जीआरआईडी आपको मास्टर नोड और अन्य सिस्टम को दास नोड के रूप में एक सिस्टम बनाकर क्लाउड में अपने वेब एप्लिकेशन के स्वचालन परीक्षण स्क्रिप्ट को चलाने और नियंत्रित करने की सुविधा प्रदान करता है, दास नोड एक मास्टर नोड से कनेक्ट होता है, और मास्टर नोड दास की निगरानी करता है नोड्स, इसलिए आपके परीक्षण विभिन्न ऑपरेटिंग सिस्टम और विभिन्न ब्राउज़रों जैसे क्रोम, फ़ायरफ़ॉक्स, इंटरनेट एक्सप्लोरर आदि के साथ अलग-अलग दास नोड्स में हैं।

जी। समानांतर परीक्षण क्षमता:

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

एच। कई फ्रेमवर्क और तीसरे पक्ष के उपकरण और प्रौद्योगिकी के साथ संगतता

सेलेनियम ढांचे को आसानी से कई विभिन्न तृतीय पक्ष प्रौद्योगिकियों और ढांचे के साथ एकीकृत किया जा सकता है जैसे कि विभिन्न यूनिट टेस्ट फ्रेमवर्क, यानी टेस्टएनजी, जुनीट, एमबीयूनीट, नूनिट इत्यादि, विभिन्न निर्माण उपकरण जैसे चींटी, मेवेन, ग्रैडल इत्यादि, निरंतर एकीकरण उपकरण, यानी जेनकींस, विभिन्न परीक्षण प्रबंधन उपकरण जैसे जीरा, टेस्टलिंक इत्यादि, विभिन्न रिपोर्टिंग टूल जैसे लुभाना, सीमा रिपोर्ट आदि।

I. हेडलेस ब्राउज़र निष्पादन: 

सेलेनियम वेबड्राइवर स्वचालित के लिए हेडलेस ब्राउज़र ड्राइवर का समर्थन करता है टेस्ट केस निष्पादन, जहां आपके सभी ऑटोमेशन टेस्ट केस हेडलेस ब्राउजर मोड में चलते हैं, यानी कोई ब्राउज़र नहीं खुलता है और निष्पादन तेज हो जाता है ताकि आप तत्काल रिलीज और सत्यापन के मामले में टेस्ट स्क्रिप्ट और कार्यक्षमता को जल्दी से पूरा कर सकें।

आप मूल रूप से उपयोग कर सकते हैं htmlयूनिटड्राइवर or भूत चालक सेलेनियम के साथ बिना सिर के निष्पादन के लिए।  

सेलेनियम के नुकसान:

  • नेटिव/विंडो आधारित ऐप सपोर्ट, मौजूद नहीं : 
    • सेलेनियम का उपयोग वेब बैड एप्लिकेशन को स्वचालित करने के लिए किया जाता है, लेकिन यह मूल अनुप्रयोगों या विंडोज़ आधारित अनुप्रयोगों के लिए समर्थन प्रदान नहीं करता है।
  • संपूर्ण छवि-आधारित स्वचालन: 
    • सेलेनियम छवि-आधारित समस्याओं या अनुप्रयोगों को स्वचालित करने के लिए संपूर्ण समर्थन प्रदान नहीं करता है, हालांकि हम कुछ तीसरे पक्ष के उपकरण जैसे सिकुली, टेसरैक्ट ocr आधारित समाधानों का उपयोग कर सकते हैं, जो छवि सत्यापन / संचालन से संबंधित कार्य करने के लिए सेलेनियम के साथ एकीकृत किया जा सकता है। छवि डेटा निष्कर्षण और सत्यापन, वे भी कुछ सीमाएँ हैं जैसे आप समानांतर परीक्षण के साथ मुद्दों का सामना कर सकते हैं, हस्तलिखित दस्तावेज की पहचान कर सकते हैं और इस तरह के उपयोग के मामले होने पर आपके आवेदन को स्वचालित करने की प्रक्रिया में उन लोगों को मान्य कर सकते हैं।
  • तृतीय-पक्ष टूल के साथ एकीकरण : 
    • सेलेनियम के साथ कई तीसरे पक्ष के उपकरण के साथ एकीकरण का एक नकारात्मक पहलू यह है कि आपकी स्वचालन स्क्रिप्ट कई बार धीमी हो सकती है।
  • सेलेनियम ढांचा विकास :
    • सेलेनियम के साथ एक अग्रिम टेस्ट ऑटोमेशन ढांचे को डिजाइन और विकसित करने के लिए सेलेनियम पर बहुत अधिक विशेषज्ञता की आवश्यकता होती है और यह सेलेनियम के साथ कई उपकरणों के साथ ऑटोमेशन फ्रेमवर्क बनाने के लिए बहुत सीधे नहीं है।
  • ब्राउज़र विशिष्ट मुद्दे: 
    • सेलेनियम के साथ काम करते समय आपको कुछ ब्राउज़र-विशिष्ट मुद्दों का सामना करना पड़ सकता है, विशेष रूप से IE के साथ, कभी-कभी आप क्लिक, प्रेषक आदि जैसे वेब कार्यों को संभालने में सक्षम नहीं हो सकते हैं, और ब्राउज़र मृत हो सकता है। इसलिए आपको बूटस्ट्रैप जेएस पर बनाए गए एप्लिकेशन को स्वचालित करने और IE ब्राउज़र पर निष्पादित करने के दौरान उन क्षेत्रों को संभालने के लिए अग्रिम ज्ञान होना चाहिए।
    • इसके अलावा, आप सेलेनियम वेबड्राइवर संस्करणों के साथ ब्राउज़र संगतता मुद्दों का सामना कर सकते हैं; आपको यह सुनिश्चित करने की आवश्यकता है कि आप संगत फ़ायरफ़ॉक्स, क्रोम या किसी अन्य ब्राउज़र का उपयोग कर रहे हैं जिसे आप सेलेनियम वेबड्राइवर के संस्करण के साथ काम कर रहे हैं।
  • कोई आधिकारिक समर्थन नहीं: 
    • किसी भी अन्य ओपन सोर्स टूल की तरह सेलेनियम भी एक ओपन-सोर्स टूल है, जिसका अर्थ है कि आपकी समस्याओं के लिए आपको किसी भी तरह के पेड टूल्स की तरह आधिकारिक समर्थन नहीं मिलेगा, फिर भी बहुत बड़ी सामुदायिक सहायता उपलब्ध है, आप उनके साथ समस्या बयान के साथ काम कर सकते हैं , लेकिन यह भारी समय लेने वाला हो सकता है।

सेलेनियम घटक: 

एक उपकरण के रूप में सेलेनियम में नीचे दिए गए घटक हैं, जो हैं: 

सेलेनियम आईडीई:

  • सेलेनियम आईडीई या सेलेनियम इंटीग्रेटेड डेवलपमेंट वातावरण वेब एप्लीकेशन ऑटोमेशन के लिए सेलेनियम का सबसे प्रारंभिक संस्करण है।
  • सेलेनियम आईडीई एक प्रकार का रिकॉर्ड और प्लेबैक टूल है, जिसे आप ब्राउज़र के एक प्लगइन के रूप में उपयोग कर सकते हैं और अपने वेब एप्लिकेशन को आपके द्वारा किए गए एप्लिकेशन को रिकॉर्ड कर सकते हैं और जिसे स्क्रिप्ट के रूप में सहेजा जा सकता है और बाद में आप निष्पादित करने के लिए उसी रिकॉर्ड की गई स्क्रिप्ट को चला सकते हैं और कर सकते हैं सत्यापन।
  • लेकिन इसकी कुछ सीमाएँ हैं जैसे:
    • आपको रिकॉर्ड की गई स्क्रिप्ट को चलाने की आवश्यकता है, स्क्रिप्ट को संशोधित करना इतना लचीला नहीं है या न ही आप अपने स्वतंत्र दृष्टिकोण में केस और स्क्रिप्ट का उपयोग करने के लिए डिज़ाइन कर सकते हैं।
    • निष्पादन प्रकृति में बहुत धीमा है।
    • मुख्य रूप से फ़ायरफ़ॉक्स का समर्थन करता है, हालांकि कुछ ऐसे बदलाव हैं जो आप रिकॉर्ड की गई स्क्रिप्ट को Google क्रोम जैसे अन्य ब्राउज़रों में चलाने के लिए कर सकते हैं।
    • समानांतर निष्पादन समर्थित नहीं है।
    • मोबाइल परीक्षण समर्थित नहीं है।
    • रिपोर्ट जनरेशन काफी अच्छी नहीं है।
  • इसका वास्तव में सेलेनियम का बहुत प्रारंभिक संस्करण है, इसका उपयोग करके आप अपने वेब एप्लिकेशन के लिए बहुत सीमित टेस्ट ऑटोमेशन कर सकते हैं।

सेलेनियम आर.सी.

  • सेलेनियम रिमोट कंट्रोल सेलेनियम का अगला संस्करण है और बहुत बार इसे सेलेनियम 1.0 के रूप में संदर्भित किया जाता है।

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

सेलेनियम आरसी में दो प्रमुख घटक होते हैं, जैसे सेलेनियम सर्वर, सेलेनियम क्लाइंट।

सेलेनियम सर्वर ब्राउज़रों को लॉन्च करता है और सेलेनियम कमांड चलाता है जिसे आपने अलग-अलग भाषाओं में उपलब्ध सेलेनियम क्लाइंट लाइब्रेरीज़ का उपयोग करके टेस्ट ऑटोमेशन स्क्रिप्ट के रूप में लिखा है।

सेलेनियम सर्वर कमांड / टेस्ट स्क्रिप्ट को सेलेनियस कमांड नामक किसी चीज़ में परिवर्तित करता है, और यह HTTP प्रॉक्सी के रूप में कार्य करता है।

सेलेनियम सर्वर वेब ब्राउज़र इंजन के साथ इंटरैक्ट करता है और वेब ऑपरेशन करता है जिसे आप एप्लिकेशन अंडर टेस्ट के लिए टेस्ट मामलों के भाग के रूप में स्वचालित करने का प्रयास कर रहे हैं।

सेलेनियम आरसी का उपयोग करने के लिए कदम: 

  • सेलेनियम-आरसी सर्वर स्थापित करें।
    • ब्राउज़र ड्राइवर के लिए प्रोग्रामिंग भाषा और भाषा की अपनी पसंद का उपयोग करके एक प्रोजेक्ट बनाएं।
  • सेलेनियम सर्वर स्थापित करें
    • आप सेलेनियम सर्वर को बस सेलेनियम- server.jar फ़ाइल डाउनलोड करके सेट कर सकते हैं और इसे नीचे दिए गए आदेश का उपयोग करके अपने सिस्टम में चला सकते हैं: 
    • जावा-सेजेलियम-सर्वर.जर
  • सेलेनियम क्लाइंट लाइब्रेरी का उपयोग करके और सेलेनियम सर्वर का उपयोग करके स्क्रिप्ट लिखें।

सेलेनियम आरसी की सीमाएं:

  • सेलेनियम रिमोट कंट्रोल में, ऑटोमेशन ड्राइवर और ब्राउज़र थोड़ा धीमा कारण बन जाता है क्योंकि ब्राउज़र इंजन को सीधे इंटरैक्ट नहीं किया जाता है, बल्कि सेलेनियम आरसी ब्राउज़र इंजन में जावास्क्रिप्ट इंजेक्ट करता है, इसे सेलेनियम कोर भी कहा जाता है।
  • सर्वर जो परीक्षण स्क्रिप्ट निष्पादन से पहले और उसके दौरान उठना और चलना है।
  • सेलेनियम वेबराइवर के विपरीत सेलेनियम आरसी जैसे माउस मूवमेंट, डबल क्लिक, कीबोर्ड से इनपुट लेना आदि का उपयोग करके एडवांस वेब क्रियाओं को स्वचालित और नियंत्रित नहीं किया जा सकता है।
  • सेलेनियम आरसी मोबाइल ऐप परीक्षण का समर्थन नहीं करता है।
  • सेलेनियम आरसी स्वचालन परीक्षण स्क्रिप्ट को चलाने के लिए वास्तविक ब्राउज़र पर निर्भर है, और यह सेलेनियम वेबड्राइवर के विपरीत एचटीएमएलयूनाइटड्राइवर या जीएचओस्टड्राइवर जैसे हेडलेस ब्राउज़र का समर्थन नहीं करता है।

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

सेलेनियम वेबड्राइवर सेलेनियम घटकों के बीच अग्रिम संस्करण है जो बहुत मजबूत है और वेब इंटरैक्शन के अग्रिम संस्करण का भी समर्थन करता है और यह सेलेनियम आरसी के विपरीत जावास्क्रिप्ट के माध्यम से ब्राउज़र के साथ बातचीत नहीं करता है और मोबाइल एप्लिकेशन परीक्षण समर्थन भी है। इसे बहुत बार सेलेनियम 2.0 के भाग के रूप में संदर्भित किया जाता है।

WebDriver गतिशील तत्वों को संभाल सकता है और कई अलग-अलग ब्राउज़रों के साथ समानांतर निष्पादन का भी समर्थन करता है।

आगामी खंडों में हमारी विस्तृत चर्चा होगी।

सेलेनियम ग्रिड: 

सेलेनियम जीआरआईडी सेलेनियम का एक अन्य घटक है जिसके माध्यम से आप मास्टर-स्लेव नोड्स बनाकर अपने स्वचालन परीक्षण स्क्रिप्ट का रिमोट निष्पादन कर सकते हैं। सेलेनियम जीआरआईडी एक ही ब्राउज़र के साथ-साथ कई ब्राउज़रों पर समानांतर परीक्षण का समर्थन करता है। 

हम आगे के अनुभागों में सेलेनियम जीआरआईडी पर आगे चर्चा करेंगे।

वेबड्राइवर 3.0

सेलेनियम 3.0 सेलेनियम घटकों का नवीनतम संस्करण है जो मूल रूप से वेबड्राइवर 2.0 और जीआरआईडी 3 के विकास का संयोजन है।

In this next segment, we are about to discuss the सेलेनियम वेबड्राइवर आर्किटेक्चर विस्तार से, और अंत में, यह दर्शाया गया है सेलेनियम आंतरिक रूप से कैसे काम करता है,.

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

सेलेनियम वेबड्राइवर वास्तुकला के हिस्से के रूप में पांच प्रमुख विशेषताएं या घटक हैं: 

    

  • सेलेनियम क्लाइंट लाइब्रेरी या सेलेनियम-प्रोग्रामिंग भाषा बाइंडिंग
  • WebDriver प्रोटोकॉल या HTTP पर JSON वायर प्रोटोकॉल
  • ब्राउज़र के ड्राइवर
  • ब्राउज़र इंजन
  • ब्राउज़र का रेंडरिंग इंजन
सेलेनियम वेबड्राइवर वास्तुकला
सेलेनियम ट्यूटोरियल-सेलेनियम वेबड्राइवर वास्तुकला

सेलेनियम क्लाइंट लाइब्रेरी या प्रोग्रामिंग भाषा बाइंडिंग: 

सेलेनियम आपके स्वचालन विकास और स्वचालन परीक्षण स्क्रिप्ट के हिस्से के रूप में कई अलग-अलग भाषाओं का समर्थन करने के लिए अलग-अलग भाषा बंधन, यानी क्लाइंट लाइब्रेरी प्रदान करता है। उदाहरण के लिए, सेलेनियम सी # के साथ, सेलेनियम जावा के साथ, सेलेनियम पायथन के साथ आदि।

WebDriver Protocol या JSON WIRE PROTOCOL:

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

 ब्राउज़र ड्राइवर:

प्रत्येक ब्राउज़र का अपना ब्राउज़र ड्राइवर होता है। ब्राउज़र ड्राइवर ब्राउज़र इंजन के माध्यम से संबंधित ब्राउज़र के साथ संचार स्थापित करते हैं। 

जब स्वचालन स्क्रिप्ट निष्पादित हो जाती है, तो यह सीधे ब्राउज़र ड्राइवरों और अंततः संबंधित ब्राउज़र के साथ संचार करता है। अनुरोध और प्रतिक्रिया को HTTP अनुरोध और HTTP प्रतिक्रिया के माध्यम से स्थानांतरित किया जाता है।

ब्राउज़र इंजन:

हर ब्राउज़र का अपना ब्राउज़र इंजन होता है; ब्राउज़र इंजन मूल रूप से UI और रेंडरिंग इंजन के बीच एक मध्यस्थ परत के रूप में काम करता है।

ब्राउज़र रेंडरिंग इंजन: 

ब्राउज़र रेंडरिंग इंजन अनुरोध-प्रतिक्रिया और डेटा के लिए आवश्यक विशिष्ट तत्वों को प्रस्तुत करके अनुरोधित दस्तावेज़ को प्रदर्शित करने के लिए जिम्मेदार है।

सेलेनियम वेबड्राइवर वास्तुकला और संक्षेप में कार्यशीलता :

सेलेनियम-वेबड्राइवर ऑटोमेशन और उसके जावास्क्रिप्ट इंजन के लिए प्रत्येक ब्राउज़र के मूल समर्थन का उपयोग करके सीधे ब्राउज़र को आमंत्रित करता है। ये कॉल कैसे किए जा रहे हैं और जिन सुविधाओं का वे समर्थन करते हैं, वे आपके द्वारा उपयोग किए जा रहे ब्राउज़र पर निर्भर करते हैं।

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

वेबड्राइवर स्क्रिप्ट को चलाते समय निम्न घटनाएं होती हैं:

  •  हम किसी भी भाषा बंधन (जावा / सी # आदि) का उपयोग करके स्वचालन स्क्रिप्टिंग करते हैं, और यह WebDriver API को ट्रिगर करता है जबकि स्क्रिप्ट निष्पादन में है।
  •   स्क्रिप्ट और अंततः कमांड (जैसे Driver.findElement (By.id ("idName"))) हैं आंतरिक रूप से जावास्क्रिप्ट में परिवर्तित किया जा रहा है।
  •   ब्राउज़र इंजन का उपयोग करना, यह फिर से है JSON में परिवर्तित, जो की-वैल्यू पेयर की तरह है।
  •   संबंधित कुंजी का संबंधित मूल्य प्राप्त करने के बाद, यह संबंधित WebElements की पहचान करता है और संबंधित उपयोगकर्ता क्रियाएं (जैसे क्लिक, सेंड कीज आदि) करता है।
  •   सभी संचार a . का उपयोग करके किया जाता है JSON- वायर या वेबड्राइवर प्रोटोकॉल कॉल, और संचार HTTP पर रेस्ट एपीआई के रूप में HTTP अनुरोध और HTTP प्रतिक्रिया के रूप में होता है।

सेलेनियम अक्सर पूछे जाने वाले प्रश्न: 

सेलेनियम में किस प्रकार के वेबड्राइवर एपीआई उपलब्ध हैं?

सेलेनियम वेबड्राइवर एक इंटरफ़ेस है और इसमें विभिन्न प्रोग्रामिंग भाषाओं जैसे जावा, सी #, पायथन आदि के लिए अलग-अलग भाषा बाइंडिंग है, 

सेलेनियम वेबड्राइवर प्रमुख रूप से दो अलग-अलग प्रकार के होते हैं जैसे: 

  • सेलेनियम वेब ड्राइवर स्थानीय।
  • सेलेनियम वेब ड्राइवर रिमोट। 

सेलेनियम वेब ड्राइवर लोकल विशिष्ट भाषा बाइंडिंग के साथ काम करने के लिए एपीआई का उपयोग करता है, और आप स्थानीय निष्पादन के साथ ये काम कर सकते हैं, जबकि दूसरी ओर यदि आप रिमोट में ऑटोमेशन परीक्षण स्क्रिप्ट का निष्पादन करना चाहते हैं, तो आपको उपयोग करने की आवश्यकता है रिमोट सेलेनियम वेब ड्राइवर एपीआई।

समझाएं कि ऐसे कौन से परिदृश्य हैं जिन्हें हम सेलेनियम का उपयोग करके स्वचालित नहीं कर सकते हैं?

सेलेनियम आवेदन के पहलुओं के नीचे के क्षेत्रों को स्वचालित करने का एक तरीका प्रदान नहीं करता है, जो हैं: 

  • आवेदन का प्रदर्शन परीक्षण
  • अनुप्रयोगों का सुरक्षा परीक्षण.
  • छवि-आधारित प्रसंस्करण और स्वचालन
  • कैप्चा आधारित स्वचालन।
  • वीडियो स्ट्रीमिंग परिदृश्य।
  • नेटिव एप्लिकेशन या विंडो-आधारित एप्लिकेशन।
  • स्ट्रीमिंग एप्लिकेशन

सेलेनियम 2.0 और सेलेनियम 3.0 के बीच अंतर?

  • सेलेनियम 2.0 के लिए न्यूनतम आवश्यकता जावा 1.7 है, दूसरी ओर सेलेनियम 3.0 के लिए, न्यूनतम आवश्यक जावा संस्करण 1.8 है
  • सेलेनियम 3.0 को 47 से ऊपर फ़ायरफ़ॉक्स संस्करण के लिए गेकऑड्राइवर की आवश्यकता है, लेकिन सेलेनियम 2.0 के लिए ऐसा नहीं है 
  • सेलेनियम 3.0 आधुनिक ब्राउज़र का समर्थन करता है जैसे एज, सफारी आदि लेकिन दूसरी ओर सेलेनियम 2.0 के लिए, मोज़िला के लिए ब्राउज़र ड्राइवर, क्रोमड्राइवर, IE जो सेलेनियम डेवलपर्स द्वारा विकसित किया गया है।
  • सेलेनियम 3 में, मोबाइल ऑटोमेशन परीक्षण के लिए समर्थन हटा दिया गया, यानी AndroidDriver और iPhoneDriver, और आपको जैसे टूल का उपयोग करना होगा मोबाइल ऑटोमेशन परीक्षण के लिए एपियम, जो सेलेनियम 2.0 के मामले में नहीं है।
  • सेलेनियम 3.0 हेडलेस ड्राइवर, यानी HTMLUnitWebDriver का समर्थन नहीं करता है, लेकिन सेलेनियम 2.0 में हेडलेस निष्पादन के लिए समर्थन है, अर्थात HTMLUnitDriver या Ghostdriver के साथ।
  • सेलेनियम 3 के भीतर, सेलेनियम वेबड्राइवर W3C मानक बन गया है; दूसरी ओर, सेलेनियम 2.0 में सेलेनियम वेबड्राइवर W3C मानक से संबंधित नहीं है।

निष्कर्ष : इसके साथ हम पहले खंड को पूरा करते हैं सेलेनियम ट्यूटोरियल ब्लैकबुक कवर सेलेनियम, सेलेनियम वेबड्राइवर क्या है? वास्तुकला, सेलेनियम सिंहावलोकन, सेलेनियम के पेशेवरों और विपक्ष, के आगामी सेगमेंट में सेलेनियम ट्यूटोरियल module 2 we will be discussing about Selenium Installation ie setup , Selenium commands and other basic,intermediate and advance topics of Selenium

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