प्रोट्रैक्टर से
यह ट्यूटोरियल उन लोगों के लिए है जो प्रोट्रैक्टर का उपयोग कर रहे हैं और अपने फ्रेमवर्क को WebdriverIO में माइग्रेट करना चाहते हैं। यह Angular टीम द्वारा घोषणा के बाद शुरू किया गया था कि प्रोट्रैक्टर का समर्थन अब और नहीं किया जाएगा। WebdriverIO प्रोट्रैक्टर के कई डिजाइन निर्णयों से प्रभावित हुआ है, जिस कारण से यह शायद माइग्रेट करने के लिए सबसे नजदीकी फ्रेमवर्क है। WebdriverIO टीम हर एक प्रोट्रैक्टर योगदानकर्ता के काम की सराहना करती है और आशा करती है कि यह ट्यूटोरियल WebdriverIO में संक्रमण को आसान और सीधा बनाता है।
हालांकि हम इसके लिए पूरी तरह से स्वचालित प्रक्रिया चाहते हैं, वास्तविकता अलग दिखती है। हर किसी का सेटअप अलग है और प्रोट्रैक्टर का उपयोग अलग-अलग तरीकों से करता है। हर कदम को मार्गदर्शन के रूप में देखा जाना चाहिए और कम से कम कदम से कदम निर्देश के रूप में। यदि आपको माइग्रेशन के साथ समस्याएं हैं, तो हमसे संपर्क करने में संकोच न करें।
सेटअप
प्रोट्रैक्टर और WebdriverIO API वास्तव में बहुत समान है, एक बिंदु तक जहां अधिकांश कमांड्स को कोडमोड के माध्यम से स्वचालित तरीके से पुनः लिखा जा सकता है।
कोडमोड इंस्टॉल करने के लिए, चलाएँ:
npm install jscodeshift @wdio/codemod
रणनीति
कई माइग्रेशन रणनीतियां हैं। आपकी टीम के आकार, टेस्ट फाइलों की संख्या और माइग्रेट करने की तात्कालिकता के आधार पर आप सभी टेस्ट को एक साथ या फाइल दर फाइल परिवर्तित करने का प्रयास कर सकते हैं। यह देखते हुए कि प्रोट्रैक्टर को Angular वर्जन 15 (2022 के अंत) तक बनाए रखा जाएगा, आपके पास अभी भी पर्याप्त समय है। आप प्रोट्रैक्टर और WebdriverIO टेस्ट एक साथ चला सकते हैं और WebdriverIO में नए टेस्ट लिखना शुरू कर सकते हैं। अपने समय बजट के अनुसार आप पहले महत्वपूर्ण टेस्ट केस माइग्रेट करना शुरू कर सकते हैं और फिर उन टेस्ट पर काम कर सकते हैं जिन्हें आप शायद हटा भी सकते हैं।
पहले कॉन्फिग फाइल
कोडमोड इंस्टॉल करने के बाद हम पहली फाइल को परिवर्तित करना शुरू कर सकते हैं। पहले WebdriverIO के कॉन्फिगरेशन विकल्पों को देखें। कॉन्फिग फाइलें बहुत जटिल हो सकती हैं और यह समझदारी हो सकती है कि केवल आवश्यक भागों को पोर्ट किया जाए और देखें कि बाकी कैसे जोड़ा जा सकता है जब संबंधित टेस्ट जिन्हें कुछ विकल्पों की आवश्यकता होती है, माइग्रेट किए जाते हैं।
पहले माइग्रेशन के लिए हम केवल कॉन्फिग फाइल को परिवर्तित करते हैं और चलाते हैं:
npx jscodeshift -t ./node_modules/@wdio/codemod/protractor ./conf.ts
आपके कॉन्फिग का नाम अलग हो सकता है, हालांकि सिद्धांत समान होना चाहिए: पहले कॉन्फिग को माइग्रेट करना शुरू करें।