सेलेनियम क्या है? सेलेनियम स्वचालन परीक्षण का परिचय

विषय - सूची:

Anonim

सेलेनियम क्या है?

सेलेनियम एक स्वतंत्र (ओपन-सोर्स) स्वचालित परीक्षण ढांचा है जिसका उपयोग विभिन्न ब्राउज़रों और प्लेटफार्मों पर वेब अनुप्रयोगों को मान्य करने के लिए किया जाता है। आप सेलेनियम टेस्ट स्क्रिप्ट बनाने के लिए जावा, सी #, पायथन आदि जैसी कई प्रोग्रामिंग भाषाओं का उपयोग कर सकते हैं। सेलेनियम परीक्षण उपकरण का उपयोग करके किए गए परीक्षण को आमतौर पर सेलेनियम परीक्षण कहा जाता है।

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

  • सेलेनियम एकीकृत विकास पर्यावरण (IDE)
  • सेलेनियम रिमोट कंट्रोल (आरसी)
  • वेबड्राइवर
  • सेलेनियम ग्रिड
सेलेनियम का परिचय

फिलहाल, सेलेनियम आरसी और वेबड्राइवर को सेलेनियम 2 बनाने के लिए एकल ढांचे में मिला दिया गया है । सेलेनियम 1, वैसे, सेलेनियम आरसी को संदर्भित करता है।

यदि वीडियो उपलब्ध नहीं है तो यहां क्लिक करें

इस ट्यूटोरियल में, आप सीखेंगे:

  • सेलेनियम क्या है?
  • सेलेनियम का विकास किसने किया?
  • वही मूल नीति मुद्दा
  • सेलेनियम रिमोट कंट्रोल का जन्म (सेलेनियम आरसी)
  • सेलेनियम ग्रिड का जन्म
  • सेलेनियम आईडीई का जन्म
  • वेबड्राइवर का जन्म
  • सेलेनियम 2 का जन्म
  • तो, क्यों नाम सेलेनियम?
  • संक्षिप्त परिचय सेलेनियम आईडीई
  • संक्षिप्त परिचय सेलेनियम रिमोट कंट्रोल (सेलेनियम आरसी)
  • संक्षिप्त परिचय वेबड्राइवर
  • सेलेनियम ग्रिड
  • ब्राउज़र और पर्यावरण समर्थन पर ध्यान दें
  • अपनी जरूरत के लिए सही सेलेनियम टूल का चयन कैसे करें
  • सेलेनियम और QTP (अब UFT) के बीच एक तुलना
  • सेलेनियम पर QTP के लाभ

सेलेनियम का विकास किसने किया?

चूंकि सेलेनियम विभिन्न उपकरणों का एक संग्रह है, इसलिए इसमें अलग-अलग डेवलपर्स भी थे। नीचे प्रमुख व्यक्ति हैं जिन्होंने सेलेनियम परियोजना में उल्लेखनीय योगदान दिया है

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

अन्य वेब अनुप्रयोगों को स्वचालित करने में मदद करने के लिए इस विचार को देखते हुए, उन्होंने जावास्क्रिप्टरनर को ओपन-सोर्स बनाया, जिसे बाद में सेलेनियम कोर के रूप में फिर से नामित किया गया ।

वही मूल नीति मुद्दा

समान उत्पत्ति नीति एक ऐसे डोमेन से तत्वों को एक्सेस करने से जावास्क्रिप्ट कोड को प्रतिबंधित करती है, जहां यह लॉन्च किया गया था, जहां से अलग है । उदाहरण के लिए, www.google.com में HTML कोड एक जावास्क्रिप्ट प्रोग्राम "randomScript.js" का उपयोग करता है। वही मूल नीति केवल randomScript.js को google.com जैसे google.com/mail, google.com/login या google.com/signup के भीतर पृष्ठों तक पहुंचने की अनुमति देगी। हालाँकि, यह विभिन्न साइटों जैसे yahoo.com/search या guru99.com से पृष्ठों तक नहीं पहुँच सकता क्योंकि वे विभिन्न डोमेन से संबंधित हैं।

यही कारण है कि सेलेनियम आरसी से पहले, परीक्षकों को सेलेनियम कोर (एक जावास्क्रिप्ट प्रोग्राम) और वेब एप्लिकेशन वाले वेब सर्वर की स्थानीय प्रतियां स्थापित करने की आवश्यकता होती है, ताकि वे एक ही डोमेन से संबंधित हों

सेलेनियम रिमोट कंट्रोल का जन्म (सेलेनियम आरसी)

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

सेलेनियम ग्रिड का जन्म

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

सेलेनियम आईडीई का जन्म

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

वेबड्राइवर का जन्म

साइमन स्टीवर्ट WebDriver circa 2006 बनाया जब ब्राउज़र और वेब एप्लिकेशन सेलेनियम कोर जैसे जावास्क्रिप्ट कार्यक्रमों के साथ अधिक शक्तिशाली और अधिक प्रतिबंधक बन रहे थे। यह पहला क्रॉस-प्लेटफ़ॉर्म टेस्टिंग फ्रेमवर्क था जो ओएस स्तर से ब्राउज़र को नियंत्रित कर सकता था।

सेलेनियम 2 का जन्म


में 2008 , पूरे सेलेनियम टीम WebDriver और सेलेनियम आर सी मर्ज करने के लिए कहा जाता है एक अधिक शक्तिशाली उपकरण बनाने का फैसला किया सेलेनियम 2 के साथ, WebDriver कोर किया जा रहा है । वर्तमान में, सेलेनियम आरसी अभी भी विकसित किया जा रहा है लेकिन केवल रखरखाव मोड में है। सेलेनियम प्रोजेक्ट के अधिकांश प्रयास अब सेलेनियम 2 पर केंद्रित हैं।

तो, क्यों नाम सेलेनियम?

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

संक्षिप्त परिचय सेलेनियम आईडीई

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

संक्षिप्त परिचय सेलेनियम रिमोट कंट्रोल (सेलेनियम आरसी)

सेलेनियम आरसी लंबे समय से पूरे सेलेनियम प्रोजेक्ट का प्रमुख परीक्षण ढांचा था । यह पहला स्वचालित वेब परीक्षण उपकरण है जो उपयोगकर्ताओं को उनकी पसंद की प्रोग्रामिंग भाषा का उपयोग करने की अनुमति देता है । संस्करण 2.25.0 के अनुसार, RC निम्नलिखित प्रोग्रामिंग भाषाओं का समर्थन कर सकती है:

  • जावा
  • सी#
  • पीएचपी
  • अजगर
  • पर्ल
  • माणिक

संक्षिप्त परिचय वेबड्राइवर

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

समर्थित भाषाएं सेलेनियम आरसी में समान हैं।

  • जावा
  • सी#
  • पीएचपी
  • अजगर
  • पर्ल
  • माणिक

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

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

विशेषताएं:

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

ब्राउज़र और पर्यावरण समर्थन पर ध्यान दें

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

सेलेनियम आईडीई वेबड्राइवर
ब्राउज़र का समर्थन मोज़िला फ़ायरफ़ॉक्स Internet Explorer संस्करण 6 से 11, दोनों 32 और 64-बिट Microsoft एज संस्करण 12.10240 और उससे अधिक (आंशिक रूप से विकास के तहत कुछ कार्यक्षमताओं) फ़ायरफ़ॉक्स 3.0 और Google Chrome 12.0 से ऊपर । और ओपेरा 11.5 से ऊपर और एंड्रॉइड के ऊपर - 2.3 और फोन और टैबलेट (डिवाइस और एमुलेटर) के लिए ऊपर iOS 3+ फोन (डिवाइस और एमुलेटर) और 3.2+ टैबलेट (डिवाइस और एमुलेटर) के लिए HtmlUnit 2.9 और ऊपर
ऑपरेटिंग सिस्टम विंडोज, मैक ओएस एक्स, लिनक्स सभी ऑपरेटिंग सिस्टम जहां ऊपर के ब्राउज़र चल सकते हैं।

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

अपनी जरूरत के लिए सही सेलेनियम टूल का चयन कैसे करें

साधन क्यों चुनें?

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

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

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

  • सेलेनीस की तुलना में अधिक अभिव्यंजक भाषा का उपयोग करके एक परीक्षण डिजाइन करने के लिए
  • विभिन्न ऑपरेटिंग सिस्टम पर विभिन्न ब्राउज़रों (HtmlUnit को छोड़कर) के खिलाफ अपना परीक्षण चलाने के लिए।
  • सेलेनियम ग्रिड का उपयोग करके कई वातावरणों में अपने परीक्षणों को तैनात करने के लिए।
  • जावास्क्रिप्ट का समर्थन करने वाले एक नए ब्राउज़र के खिलाफ अपने आवेदन का परीक्षण करने के लिए।
  • जटिल AJAX आधारित परिदृश्यों के साथ वेब अनुप्रयोगों का परीक्षण करने के लिए।

वेबड्राइवर

  • अपने परीक्षण के मामले को डिजाइन करने में एक निश्चित प्रोग्रामिंग भाषा का उपयोग करने के लिए।
  • AJAX- आधारित फ़ंक्शंस में समृद्ध अनुप्रयोगों का परीक्षण करने के लिए।
  • HtmlUnit ब्राउज़र पर परीक्षण निष्पादित करने के लिए।
  • अनुकूलित परीक्षा परिणाम बनाने के लिए।

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

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

सेलेनियम और QTP (अब UFT) के बीच एक तुलना

क्विक टेस्ट प्रोफेशनल (QTP) एक स्वामित्व वाला स्वचालित परीक्षण उपकरण है जो 2006 में हेवलेट-पैकर्ड द्वारा अधिग्रहित होने से पहले कंपनी बुध इंटरएक्टिव के स्वामित्व में था । सेलेनियम टूल सूट QTP पर कई फायदे हैं जैसा कि नीचे विस्तृत है -

QTP पर सेलेनियम के लाभ और लाभ

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

सेलेनियम पर QTP के लाभ

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

यद्यपि स्पष्ट रूप से, QTP में अधिक उन्नत क्षमताएं हैं, सेलेनियम ने तीन मुख्य क्षेत्रों में QTP को आगे बढ़ाया:

  • लागत (क्योंकि सेलेनियम पूरी तरह से मुक्त है)
  • लचीलापन (कई प्रोग्रामिंग भाषाओं, ब्राउज़रों और प्लेटफ़ॉर्म की वजह से यह समर्थन कर सकता है)
  • समानांतर परीक्षण (कुछ ऐसा जो QTP सक्षम है लेकिन केवल गुणवत्ता केंद्र के उपयोग के साथ)

सारांश

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