पैरामीटरीकरण QTP/UFT उदाहरण के साथ
⚡ स्मार्ट सारांश
पैरामीटरीकरण QTP/UFT यह हार्ड-कोडेड मानों को परिवर्तनीय इनपुट से बदल देता है ताकि एक ही परीक्षण स्क्रिप्ट को एक भी चरण को फिर से लिखे बिना कई डेटा संयोजनों, पर्यावरण सेटिंग्स और कॉलिंग क्रियाओं के विरुद्ध चलाया जा सके।
एचएमबी क्या है? QTP पैरामीटराइजेशन?
QTP/UFT पैरामीटराइज़ेशन यह आपको स्क्रिप्ट में एक ही मान को हार्ड-कोड करने के बजाय रन टाइम पर अलग-अलग टेस्ट इनपुट चुनने की सुविधा देता है। किसी टेस्ट को एक निश्चित मान के बजाय बाहरी पैरामीटर मानों से इनपुट देने की इस प्रक्रिया को पैरामीटराइजेशन कहा जाता है।
पैरामीटराइजेशन के बिना, एक ही लॉगिन स्क्रीन को तीन अलग-अलग एजेंट नाम और पासवर्ड संयोजनों के साथ टेस्ट करने का मतलब है लगभग एक जैसे तीन स्क्रिप्ट रिकॉर्ड करना या उन्हें बनाए रखना। पैरामीटराइजेशन एक ही स्क्रिप्ट को रखता है और हर बार चलाने पर उसमें डेटा की एक नई पंक्ति डालता है, यही कारण है कि डेटा-ड्रिवन टेस्टिंग इस पर निर्भर करती है।
पैरामीटराइजेशन के प्रकार QTP
UFT (पूर्व में QTP) चार प्रकार के पैरामीटर का समर्थन करता है, जिनमें से प्रत्येक अलग-अलग प्रकार के चर डेटा के लिए उपयुक्त है:
- डेटा तालिका पैरामीटर
- परीक्षण/कार्रवाई पैरामीटर
- पर्यावरण चर पैरामीटर
- यादृच्छिक संख्या पैरामीटर
नीचे दी गई तालिका में प्रत्येक प्रकार के उपयोग के सर्वोत्तम उद्देश्यों की तुलना की गई है, इससे पहले कि हम एक वास्तविक उदाहरण देखें।
| पैरामीटर प्रकार | मूल्य कहाँ से आता है | विशिष्ट उपयोग का मामला |
|---|---|---|
| डेटा तालिका | टेस्ट के साथ शामिल ग्लोबल या एक्शन (लोकल) स्प्रेडशीट | कई पंक्तियों के परीक्षण डेटा के साथ समान चरणों को दोहराना |
| वातावरण विविधता | अंतर्निहित मान, परीक्षण के अंदर निर्धारित मान, या एक बाहरी XML फ़ाइल | एक स्थिर मान साझा करना, जैसे कि URLहर क्रिया में |
| परीक्षण/कार्रवाई | क्रियाओं के बीच पारित किया गया इनपुट या आउटपुट मान | एक क्रिया में उत्पन्न मान को दूसरी क्रिया में अग्रेषित करना |
| यादृच्छिक संख्या | एक परिभाषित सीमा के भीतर स्वचालित रूप से उत्पन्न संख्या | प्रत्येक रन पर एक अद्वितीय मान, जैसे कि ऑर्डर आईडी, बनाना |
इस ट्यूटोरियल के बाकी हिस्से में डेटा टेबल पैरामीटराइजेशन की पूरी प्रक्रिया बताई गई है, फिर अन्य तीन प्रकारों को कार्यशील VBScript उदाहरणों के साथ कॉन्फ़िगर करने का तरीका समझाया गया है।
डेटा टेबल पैरामीटराइजेशन: चरण-दर-चरण उदाहरण
इस माइक्रो फोकस UFT ट्यूटोरियल यह दर्शाता है कि डेटा टेबल का उपयोग करके फ़्लाइट रिज़र्वेशन एप्लिकेशन के लिए लॉगिन परीक्षण को पैरामीटराइज़ कैसे किया जाए। आप सोच रहे होंगे कि एक साधारण लॉगिन को स्वचालित करने में इतना प्रयास क्यों किया जाता है। इसका महत्व तब स्पष्ट हो जाता है जब यह परिदृश्य जाँचता है कि कोई उपयोगकर्ता सफलतापूर्वक लॉगिन कर सकता है या नहीं। वैध अल्फ़ान्यूमेरिक एजेंट नाम और पासवर्ड का संयोजन मान। परीक्षण के चरण वही रहते हैं, लेकिन परीक्षण किए जाने वाले डेटा की मात्रा बढ़ जाती है। यह उदाहरण 8 संभावित संयोजनों में से केवल 3 तक ही सीमित है।
| परिदृश्य का परीक्षण करें | टेस्ट स्टेप्स | परीक्षण डेटा |
|---|---|---|
| जाँच करें कि उपयोगकर्ता वैध अल्फ़ान्यूमेरिक एजेंट नाम और पासवर्ड का संयोजन इनपुट करने पर एप्लिकेशन में सफलतापूर्वक लॉग इन करता है | चरण 1) उड़ान आरक्षण आवेदन खोलें चरण 2) वैध एजेंट का नाम दर्ज करें चरण 3) वैध पासवर्ड दर्ज करें चरण 4) ओके दबाएं चरण 5) सफल लॉगिन के बाद एप्लिकेशन बंद करें। |
एजेंट का नाम = Guru पासवर्ड = Mercury एजेंट का नाम = Guru99 पासवर्ड = मर्करी एजेंट का नाम = 9999 पासवर्ड = पारा |
आप अलग-अलग डेटा मानों के साथ उन्हीं छह चरणों को बार-बार दोहरा सकते हैं, जैसा कि आप मैन्युअल रूप से करेंगे, या आप पैरामीटराइजेशन का उपयोग कर सकते हैं।
इस उदाहरण में, किसी तर्क को पैरामीटराइज़ करने का सबसे आसान तरीका यही है। Guru, है:
- कीवर्ड व्यू पर क्लिक करें।
- पैरामीटराइजेशन आइकन पर क्लिक करें।
वैल्यू कॉन्फ़िगरेशन डायलॉग बॉक्स खुलता है जिसमें वर्तमान में वैल्यू एक कॉन्स्टेंट पर सेट होती है। पैरामीटर रेडियो बटन पर क्लिक करें। QTP यह पैरामीटर को एक डिफ़ॉल्ट नाम देता है, जिसे आप "ओके" पर क्लिक करने से पहले बदल सकते हैं। डिफ़ॉल्ट रूप से, नया कॉलम ग्लोबल डेटा टेबल शीट में जोड़ा जाता है, इसलिए मान परीक्षण में प्रत्येक क्रिया के लिए उपलब्ध हो जाता है; इसके बजाय एक्शन (स्थानीय) शीट का चयन करने से यह केवल एक क्रिया तक सीमित हो जाता है।
ग्लोबल शीट में, "एजेंट का नाम" शीर्षक वाला एक कॉलम और उसका मान Guru यह बनाया गया है। आप इस पैरामीटर के लिए मानों की और पंक्तियाँ जोड़ सकते हैं।
इसमें स्विच हो रहा है विशेषज्ञ की राय दर्शाता है कि “एजेंट नाम” को पैरामीटर संदर्भ “ द्वारा प्रतिस्थापित कर दिया गया हैGuruसाथ ही इस्तेमाल की गई शीट का प्रकार भी बताएं।
आप पासवर्ड तर्क को उसी तरह पैरामीटराइज़ कर सकते हैं और परीक्षण डेटा का एक अलग सेट दर्ज कर सकते हैं।
इस डेटा तालिका का अर्थ है QTP वही छह दोहराएंगे दर्ज यह प्रक्रिया तीन बार दोहराई जाती है। पहले चरण में पहली पंक्ति का डेटा उपयोग किया जाता है, दूसरे चरण में दूसरी पंक्ति का, और इसी तरह आगे भी। स्टेटस बार बताता है कि वर्तमान में कौन सी पंक्ति उपयोग में है और डेटाशीट में संबंधित पंक्ति को हाइलाइट करता है। परिणाम तीनों चरणों का सारांश प्रस्तुत करते हैं।
पर्यावरण चर पैरामीटर में UFT
पर्यावरण चर पैरामीटर एक ऐसा मान प्रदान करते हैं जो रन के प्रत्येक पुनरावृति में स्थिर रहता है, जिससे वे कॉन्फ़िगरेशन डेटा, जैसे कि आधार, के लिए उपयोगी हो जाते हैं। URL या पर्यावरण का नाम, जिसकी हर क्रिया को आवश्यकता होती है। UFT यह तीन प्रकार के पर्यावरणीय चरों को पहचानता है:
- निर्मित: पूर्वनिर्धारित मान, जैसे कि परीक्षण का नाम, क्रिया का नाम, या ऑपरेटिंग सिस्टम का संस्करण, जो UFT यह स्वचालित रूप से भर जाता है।
- उपयोगकर्ता-परिभाषित आंतरिक: स्क्रिप्ट के माध्यम से परीक्षण के दौरान आपके द्वारा निर्धारित मान; वे केवल वर्तमान रन के लिए मौजूद होते हैं और परीक्षण के साथ सहेजे नहीं जाते हैं।
- उपयोगकर्ता-परिभाषित बाह्य: रन शुरू होने से पहले आप जिस बाहरी XML फ़ाइल को लोड करते हैं, उसमें नाम-मान युग्म संग्रहीत होते हैं।
किसी स्टेप के अंदर एनवायरनमेंट वेरिएबल का उपयोग करने के लिए, सेल के लिए वैल्यू कॉन्फ़िगरेशन डायलॉग बॉक्स खोलें, पैरामीटर प्रकार के रूप में एनवायरनमेंट चुनें और वेरिएबल का नाम चुनें। नीचे दिया गया VBScript एक ही एक्शन के अंदर तीनों प्रकार के वेरिएबल दिखाता है:
' Read a Built-in environment variable MsgBox Environment.Value("OS") ' Set and read a User-Defined Internal environment variable Environment.Value("AppURL") = "https://demo.guru99.com/V4/" MsgBox Environment.Value("AppURL") ' Load a User-Defined External XML file, then read a value from it Environment.LoadFromFile "C:\Guru99\EnvConfig.xml" MsgBox Environment.Value("Address")
ऊपर उल्लिखित बाहरी फ़ाइल बनाने के लिए, रूट के साथ एक XML दस्तावेज़ बनाएँ। <Environment> तत्व और एक <Variable> प्रत्येक नाम-मान युग्म के लिए एक तत्व चुनें, फिर उसे फ़ाइल > सेटिंग्स > पर्यावरण से लोड करें। UFT टेस्ट चलाने से पहले। एक बार लोड होने के बाद बाहरी वैरिएबल रीड-ओनली हो जाते हैं, इसलिए जब भी किसी मान को बदलने की आवश्यकता हो, स्रोत XML फ़ाइल को अपडेट करें।
एनवायरनमेंट वेरिएबल, टेस्ट/एक्शन पैरामीटर से स्कोप में भिन्न होते हैं: एक एनवायरनमेंट वेरिएबल टेस्ट में प्रत्येक एक्शन के लिए उपलब्ध होता है, जबकि एक टेस्ट/एक्शन पैरामीटर को दो विशिष्ट एक्शन के बीच स्पष्ट रूप से पास किया जाता है, जिसके प्रकार को आगे कवर किया जाएगा।
परीक्षण और कार्रवाई पैरामीटर में UFT
टेस्ट/एक्शन पैरामीटर एक एक्शन को दूसरे एक्शन में इनपुट पैरामीटर के रूप में एक मान पास करने और कॉल किए गए एक्शन को आउटपुट पैरामीटर के रूप में एक मान वापस करने की अनुमति देते हैं। एनवायरनमेंट वेरिएबल्स के विपरीत, जो पूरे टेस्ट के लिए दृश्यमान होते हैं, एक टेस्ट/एक्शन पैरामीटर केवल उस विशिष्ट कॉल के लिए मौजूद होता है जो इसे परिभाषित करता है, जिससे एक्शन विभिन्न टेस्टों में पुन: उपयोग योग्य बने रहते हैं।
इसे बनाने के लिए, टेस्ट फ़्लो में एक्शन पर राइट-क्लिक करें, एक्शन प्रॉपर्टीज़ चुनें, और इनपुट पैरामीटर्स या आउटपुट पैरामीटर्स टैब के अंतर्गत एक नाम और डेटा प्रकार के साथ एक पैरामीटर जोड़ें। इसके बाद एक्शन अपने चरणों में सीधे पैरामीटर का संदर्भ दे सकता है। जब कोई अन्य एक्शन इस एक्शन को कॉल करता है, उदाहरण के लिए, RunAction "VerifyLogin", oneIteration, "Guru99", "Mercury"कॉल में दिए गए मान उस रन के लिए इनपुट पैरामीटर को भरते हैं।
क्योंकि मान डेटा टेबल के अंदर रहने के बजाय कॉल के साथ ही स्थानांतरित होते हैं, इसलिए टेस्ट/एक्शन पैरामीटर पुन: प्रयोज्य कार्यों के लिए अच्छी तरह से काम करते हैं। कार्रवाई जिन्हें अलग-अलग इनपुट की आवश्यकता होती है, यह इस बात पर निर्भर करता है कि कौन सा परीक्षण उन्हें कॉल करता है, जैसे कि कई परीक्षण प्रवाहों द्वारा उपयोग की जाने वाली एक साझा लॉगिन क्रिया।
यादृच्छिक संख्या पैरामीटर में UFT
रैंडम नंबर पैरामीटर आपके द्वारा परिभाषित सीमा के भीतर स्वचालित रूप से एक संख्यात्मक मान उत्पन्न करते हैं, जो तब उपयोगी होता है जब किसी परीक्षण को ऐसे मान की आवश्यकता होती है जो प्रत्येक रन पर अद्वितीय होना चाहिए, जैसे कि एक नया ग्राहक आईडी, एक ऑर्डर नंबर, या एक बुकिंग संदर्भ जिसे एप्लिकेशन दो बार स्वीकार नहीं करेगा।
इसे कॉन्फ़िगर करने के लिए, सेल के लिए वैल्यू कॉन्फ़िगरेशन डायलॉग बॉक्स खोलें और पैरामीटर प्रकार के रूप में रैंडम नंबर चुनें। UFT यह संख्यात्मक सीमा, पैरामीटर के लिए एक वैकल्पिक नाम और कितनी बार एक नया मान उत्पन्न करना चाहिए, यह पूछता है:
- प्रत्येक क्रिया पुनरावृति के लिए – हर बार क्रिया चलने पर एक नई संख्या उत्पन्न होती है।
- प्रत्येक परीक्षण पुनरावृति के लिए – प्रत्येक परीक्षण पुनरावृति में एक बार एक नई संख्या उत्पन्न करता है।
- संपूर्ण परीक्षण अवधि के दौरान केवल एक बार – पूरी प्रक्रिया के दौरान संख्या समान रहती है।
रैंडम नंबर पैरामीटर, डेटा टेबल और पर्यावरण चर पैरामीटर की तरह रन-टाइम लचीलापन प्रदान करते हैं, लेकिन डेटा-संचालित पुनरावृत्तियों की मात्रा बढ़ने पर अद्वितीय परीक्षण डेटा को मैन्युअल रूप से तैयार करने की आवश्यकता को समाप्त कर देते हैं।
पैरामीटराइजेशन के लाभ
पहले स्क्रिप्ट से लेकर संपूर्ण रिग्रेशन सूट तक, संपूर्ण स्वचालन जीवनचक्र में पैरामीटराइजेशन फायदेमंद साबित होता है:
- यह आपको प्रत्येक डेटा संयोजन के लिए स्क्रिप्ट को संपादित करने के बजाय रन टाइम पर विभिन्न मान चुनने की सुविधा देता है।
- इससे कई परीक्षण डेटा संयोजनों को कवर करने के लिए आवश्यक समय और प्रयास कम हो जाते हैं।
- डेटा ड्राइवर्स, एक UFT यह सुविधा एक ही विंडो में स्क्रिप्ट में मौजूद उन सभी स्थिरांकों को सूचीबद्ध करती है जो पैरामीटराइजेशन के लिए योग्य हैं, जिससे बड़ी स्क्रिप्टों का पैरामीटराइजेशन सरल हो जाता है।
- यह टेस्ट डेटा को स्क्रिप्ट से बाहर रखता है, इसलिए एक टेस्टर ऑटोमेशन लॉजिक को छुए बिना नई पंक्तियाँ, पर्यावरण मान या यादृच्छिक रेंज जोड़ सकता है।
क्लिक करें यहाँ उत्पन्न करें यदि वीडियो उपलब्ध न हो








