ऑटोमेशन प्रोटोकॉल
WebdriverIO के साथ, आप अपने E2E टेस्ट को स्थानीय रूप से या क्लाउड में चलाते समय कई ऑटोमेशन तकनीकों के बीच चुन सकते हैं। डिफॉल्ट रूप से, WebdriverIO WebDriver Bidi प्रोटोकॉल का उपयोग करके एक स्थानीय ऑटोमेशन सत्र शुरू करने का प्रयास करेगा।
WebDriver Bidi प्रोटोकॉल
WebDriver Bidi एक ऑटोमेशन प्रोटोकॉल है जो द्वि-दिशात्मक संचार का उपयोग करके ब्राउज़र को स्वचालित करता है। यह WebDriver प्रोटोकॉल का उत्तराधिकारी है और विभिन्न परीक्षण उपयोग मामलों के लिए बहुत अधिक अंतर्निहित क्षमताएं सक्षम करता है।
यह प्रोटोकॉल वर्तमान में विकास के अधीन है और भविष्य में नए प्रिमिटिव्स जोड़े जा सकते हैं। सभी ब्राउज़र विक्रेताओं ने इस वेब मानक को लागू करने का वादा किया है और बहुत सारे प्रिमिटिव्स पहले से ही ब्राउज़र में जोड़े जा चुके हैं।
WebDriver प्रोटोकॉल
WebDriver एक रिमोट कंट्रोल इंटरफ़ेस है जो यूजर एजेंट्स के अंतर्दृष्टि और नियंत्रण को सक्षम करता है। यह आउट-ऑफ-प्रोसेस प्रोग्राम को वेब ब्राउज़र के व्यवहार को दूरस्थ रूप से निर्देशित करने के लिए एक प्लेटफॉर्म और भाषा-तटस्थ वायर प्रोटोकॉल प्रदान करता है।
WebDriver प्रोटोकॉल को उपयोगकर्ता के दृष्टिकोण से ब्राउज़र को स्वचालित करने के लिए डिज़ाइन किया गया था, जिसका अर्थ है कि एक उपयोगकर्ता जो कुछ भी करने में सक्षम है, आप ब्राउज़र के साथ कर सकते हैं। यह कमांड्स का एक सेट प्रदान करता है जो एप्लिकेशन के साथ सामान्य इंटरैक्शन्स को अमूर्त बनाता है (जैसे नेविगेट करना, क्लिक करना, या किसी एलिमेंट की स्थिति पढ़ना)। चूंकि यह एक वेब मानक है, इसलिए यह सभी प्रमुख ब्राउज़र विक्रेताओं द्वारा अच्छी तरह से समर्थित है और इसे Appium का उपयोग करके मोबाइल ऑटोमेशन के लिए अंतर्निहित प्रोटोकॉल के रूप में भी उपयोग किया जाता है।
इस ऑटोमेशन प्रोटोकॉल का उपयोग करने के लिए, आपको एक प्रॉक्सी सर्वर की आवश्यकता होती है जो सभी कमांड्स का अनुवाद करता है और उन्हें लक्षित वातावरण (यानी ब्राउज़र या मोबाइल ऐप) में निष्पादित करता है।
ब्राउज़र ऑटोमेशन के लिए, प्रॉक्सी सर्वर आमतौर पर ब्राउज़र ड्राइवर होता है। सभी ब्राउज़रों के लिए ड्राइवर उपलब्ध हैं:
- Chrome – ChromeDriver
- Firefox – Geckodriver
- Microsoft Edge – Edge Driver
- Internet Explorer – InternetExplorerDriver
- Safari – SafariDriver
किसी भी प्रकार के मोबाइल ऑटोमेशन के लिए, आपको Appium को इंस्टॉल और सेटअप करने की आवश्यकता होगी। यह आपको समान WebdriverIO सेटअप का उपयोग करके मोबाइल (iOS/Android) या यहां तक कि डेस्कटॉप (macOS/Windows) एप्लिकेशन को स्वचालित करने की अनुमति देगा।
ऐसी कई सेवाएं भी हैं जो आपको अपने ऑटोमेशन टेस्ट को क्लाउड में बड़े पैमाने पर चलाने की अनुमति देती हैं। इन सभी ड्राइवरों को स्थानीय रूप से सेटअप करने के बजाय, आप बस इन सेवाओं (जैसे Sauce Labs) से क्लाउड में बात कर सकते हैं और उनके प्लेटफॉर्म पर परिणामों का निरीक्षण कर सकते हैं। टेस्ट स्क्रिप्ट और ऑटोमेशन वातावरण के बीच संचार इस प्रकार दिखाई देगा: