QTP/UFT स्वचालन ढांचा: डेटा संचालित, कीवर्ड और हाइब्रिड
⚡ स्मार्ट सारांश
स्वचालन ढांचे में QTP/UFT टेस्ट स्क्रिप्ट, डेटा और पुन: प्रयोज्य फ़ंक्शन को इस प्रकार व्यवस्थित करें कि एक ही टेस्ट कई मामलों को कवर कर सके। डेटा-आधारित, कीवर्ड-आधारित और हाइब्रिड डिज़ाइन, इनपुट और पुन: प्रयोज्य लॉजिक के अलग-अलग मिश्रण के लिए उपयुक्त होते हैं।
डेटा-संचालित फ्रेमवर्क
डेटा-ड्रिवन फ्रेमवर्क एक ऐसा फ्रेमवर्क है जो इनपुट और आउटपुट डेटा के विभिन्न संयोजनों द्वारा संचालित होता है।
विभिन्न डेटा संयोजनों को पारित करने का एक तरीका यह है कि पैरामीटरीकरणइस विधि में, हम विभिन्न विशेषताओं का उपयोग करते हैं। QTP.
हालाँकि, DDF में, पैरामीटराइजेशन करने के लिए स्क्रिप्ट लिखी जाती हैं। इस तरह का ढांचा तब उपयोगी होता है जब AUT की कार्यक्षमता को कई इनपुट के साथ परखा जाना चाहिए और संबंधित आउटपुट को कैप्चर करना चाहिए। इन इनपुट को डेटाबेस, एक्सेल जैसी बाहरी फ़ाइल से पढ़ा जा सकता है। Outlookटेक्स्ट फाइल आदि और उनसे संबंधित आउटपुट को नीचे दिखाए गए अनुसार संबंधित बाहरी स्रोत पर वापस लिख दिया जाता है।
डेटा-ड्रिवन फ्रेमवर्क में शामिल सामान्य चरण इस प्रकार हैं:
- तैयार करें परीक्षण का मामला परीक्षणाधीन आवेदन के लिए
- AUT से OR तक ऑब्जेक्ट जोड़ें
- टेस्ट केस के आधार पर स्क्रिप्ट लिखें
इस में UFT ट्यूटोरियलहम एक्सेल को परीक्षण डेटा के बाहरी स्रोत के रूप में उपयोग करके एक नमूना परीक्षण मामले के लिए डेटा-संचालित फ्रेमवर्क डिज़ाइन विकसित करेंगे।
चरण 1) परीक्षण के तहत एप्लिकेशन के लिए टेस्ट केस तैयार करें
परीक्षण का मामला: ऑर्डर नंबर खोलें और उस ऑर्डर के लिए ग्राहक का नाम प्राप्त करें। अलग-अलग ऑर्डर नंबर के लिए यही प्रक्रिया दोहराएँ
वाह्य स्रोत: एक्सेल फ़ाइल
इस नमूने का बाहरी स्रोत एक एक्सेल फ़ाइल है। इसमें मौजूद VB स्क्रिप्ट OpenText क्रियात्मक परीक्षण (UFT वन, पूर्व में माइक्रो फोकस UFTपरीक्षण डेटा पढ़ने के लिए एक्सेल फ़ाइल खोलने हेतु कुछ कोड लिखना आवश्यक है। इसे पदानुक्रमित तरीके से किया जा सकता है।
1. सबसे पहले एक एक्सेल फ़ाइल को एप्लीकेशन के रूप में खोला जाता है
2. फिर कार्यपुस्तिका को निर्दिष्ट स्थान से खोला जाना चाहिए
3. वह शीट जहाँ परीक्षण डेटा मौजूद है।
4. अंत में, सेल को पढ़ना होगा।
चरण 2) AUT से ऑब्जेक्ट्स को OR में जोड़ें
टेस्ट केस तैयार होने के बाद, रिपॉजिटरी में सभी आवश्यक ऑब्जेक्ट जोड़ना शुरू करें। हमारे टेस्ट केस में, जोड़े जाने वाले ऑब्जेक्ट इस प्रकार हैं
1. “फ़ोल्डर खोलें” आइकन उड़ान आरक्षण आवेदन:
2. “ओपन फोल्डर” आइकन पर क्लिक करने पर “ऑर्डर नंबर” चेकबॉक्स दिखाई देता है:
3. ऑर्डर नंबर का विनएडिट बॉक्स (जहां नंबर दर्ज किए जाते हैं):
4. ओके बटन:
5. "नाम" फ़ील्ड एक WinEdit बॉक्स है। किसी विशेष ऑर्डर नंबर के लिए OK बटन पर क्लिक करने के बाद इस फ़ील्ड में नाम अपने आप भर जाएगा।
एक बार सभी आवश्यक ऑब्जेक्ट्स जोड़ दिए जाने पर, ऑब्जेक्ट रिपोजिटरी निम्नानुसार दिखाई देगी:
चरण 3) टेस्ट केस के आधार पर स्क्रिप्ट लिखें
स्क्रिप्ट चलाने से पहले, सुनिश्चित करें कि परीक्षण डेटा वाली एक्सेल फ़ाइल सहेज ली गई है और बंद है।
नीचे दी गई स्क्रिप्ट एक्सेल से ऑर्डर नंबर पढ़ने और इसे वेरिएबल “vOrder” के माध्यम से एप्लिकेशन में असाइन करने और वेरिएबल “vName” के माध्यम से एप्लिकेशन से ग्राहक का नाम लिखने के लिए है।
एक्सेल नाम: फ्लाइटDDF.xlsx
चादर का नाम: शीट1
उत्पादन
एक बार उपरोक्त स्क्रिप्ट चलाने के बाद, एक्सेल से आउटपुट निम्नानुसार प्राप्त किया जा सकता है:
डेटा-ड्रिवन फ्रेमवर्क को लिखकर भी विकसित किया जा सकता है। वर्णनात्मक प्रोग्रामिंग.
DDF के लिए बाहरी स्रोत के रूप में डेटाबेस का उपयोग करना
यदि बाह्य स्रोत डेटाबेस है तो निम्न चरणों का उपयोग करके समान परीक्षण केस निष्पादित किया जा सकता है
- डेटाबेस कनेक्शन स्थापित करने के लिए VBScript लिखें
- रिकॉर्डसेट या तालिका खोलने के लिए VBScript.
- वांछित फ़ील्ड खोलने के लिए VBScript
- विशेष सेल को क्षेत्र से पढ़ा जाता है।
लिपि
To Establish a Microsoft Database connection
ड्राइवर = {Microsoft एक्सेस ड्राइवर (*.mdb)}; DBQ =
रिकॉर्ड सेट का नाम : OpenOrder
फ़ील्ड का नाम: ऑर्डर संख्या, ग्राहक का नाम
पुनश्च: Microsoft नीचे दी गई स्क्रिप्ट का उपयोग करके Access 2010 को कनेक्ट नहीं किया जा सकता।
उत्पादन
डीडीएफ के लाभ
- एक ही परीक्षण में बड़ी संख्या में परीक्षण डेटा को बाहरी फ़ाइल में पढ़ा और लिखा जा सकता है
- लूप स्टेटमेंट का उपयोग कई पुनरावृत्तियों के लिए समान चरणों को दोहराने के लिए किया जाता है। इसलिए कोडिंग प्रयास कम हो जाता है
- चूंकि डेटा को बाहरी फ़ाइल में सीधे पढ़ा और लिखा जाता है, इसलिए उनका उपयोग करने के लिए डेटा को कॉपी, पेस्ट या निर्यात करने की कोई आवश्यकता नहीं है
- परीक्षण डेटा को किसी बाहरी फ़ाइल से पढ़ा जा सकता है और आउटपुट को किसी अन्य बाहरी फ़ाइल में लिखा जा सकता है
डीडीएफ के नुकसान
- इस ढांचे को विकसित करने के लिए स्क्रिप्टिंग ज्ञान की आवश्यकता है
- कभी-कभी डेटाबेस जैसे बाहरी स्रोत से प्राप्त डेटा की संख्या या संयोजन से कंप्यूटर धीमा हो सकता है या क्रैश भी हो सकता है। QTP
कीवर्ड-संचालित ढांचा
कीवर्ड-ड्रिवन फ्रेमवर्क एक ऐसा फ्रेमवर्क है जहां कीवर्ड परीक्षण को निर्देशित करते हैं। कीवर्ड का तात्पर्य है उपयोगकर्ता परिभाषित कार्यइस फ्रेमवर्क में, किसी विशेष परीक्षण चरण या परीक्षण मामले को निष्पादित करने के लिए कीवर्ड बनाए जाते हैं। फिर इन कीवर्ड को एक ही परीक्षण में कई परीक्षण मामलों को चलाने के लिए ड्राइवर परीक्षण में बुलाया जाता है।
सामान्यतः, परीक्षण हेतु फ्रेमवर्क को तीन तरीकों से विकसित किया जा सकता है।
- रिकॉर्ड करें और चलाएं कसौटी
- स्थानीय रिपॉजिटरी में ऑब्जेक्ट जोड़ें और सभी परीक्षण चरणों के लिए स्क्रिप्ट लिखें
- सभी परीक्षण चरणों के लिए वर्णनात्मक प्रोग्रामिंग लिखें
इस ट्यूटोरियल में, KDF को परीक्षण रिकॉर्ड करके और चलाकर विकसित किया गया है।
हमारा उद्देश्य पांच अलग-अलग परीक्षण मामलों के लिए एक ही परीक्षण चलाना है जैसे कि एप्लिकेशन में लॉगिन करना, ऑर्डर डालना, ऑर्डर खोलना, ऑर्डर हटाना और एप्लिकेशन को बंद करना। इसलिए, हम इन परीक्षण मामलों के लिए परीक्षण चरणों को रिकॉर्ड करेंगे और क्रमशः लॉगिन, इन्सर्टऑर्डर, ओपनऑर्डर, डिलीटऑर्डर और क्लोजऐप कीवर्ड के साथ फ़ंक्शन बनाएंगे।
टेस्ट केस 1: एप्लीकेशन में लॉग इन करें
कीवर्ड: लॉग इन करें ()
रिकॉर्ड की गई स्क्रिप्ट:
टेस्ट केस 2: ऑर्डर डालें
कीवर्ड:इन्सर्टऑर्डर()
रिकॉर्ड की गई स्क्रिप्ट:
टेस्ट केस3: ऑर्डर खोलें
कीवर्ड:ओपनऑर्डर()
रिकॉर्ड की गई स्क्रिप्ट:
टेस्ट केस 4: ऑर्डर हटाएँ
कीवर्ड:डिलीटऑर्डर()
रिकॉर्ड की गई स्क्रिप्ट:
टेस्ट केस5: एप्लिकेशन बंद करें
कीवर्ड:क्लोजऐप()
रिकॉर्ड की गई स्क्रिप्ट:
विभिन्न परीक्षण मामलों के लिए बनाए गए फ़ंक्शन फ़ंक्शन लाइब्रेरी में सहेजे जाते हैं और मुख्य परीक्षण से जुड़े होते हैं। मुख्य परीक्षण में आवश्यक परीक्षण मामलों के लिए कीवर्ड को कॉल करना पर्याप्त है, जिससे मुख्य परीक्षण में ड्राइवर स्क्रिप्ट का आकार कम हो जाता है।
इस सरल फ्रेमवर्क के लिए ड्राइवर स्क्रिप्ट इस प्रकार है:
उपरोक्त स्क्रिप्ट को चलाने से, सभी पांच परीक्षण मामलों के वास्तविक परिणाम एक ही परीक्षण से प्राप्त किए जा सकते हैं।
फायदे
- किसी भी संख्या में परीक्षण मामलों को उनके संबंधित कीवर्ड को कॉल करके एक ही परीक्षण पर चलाया जा सकता है
- सभी वेब/विंडोज ऑब्जेक्ट्स के लिए सामान्य वर्णनात्मक प्रोग्रामिंग लिखना और उन्हें कीवर्ड के रूप में कॉल करना विभिन्न गतिशील अनुप्रयोगों के लिए समान परीक्षण चलाने में मदद करेगा
- ड्राइवर स्क्रिप्ट का आकार कम करता है
नुकसान
- यदि चलाने के लिए परीक्षण मामलों की संख्या बहुत कम है तो इन फ्रेमवर्क को विकसित करने में लगने वाला समय बहुत अधिक है
- एक ही परीक्षण पर कई अनुप्रयोगों के लिए KDF डिज़ाइन करते समय चरणों को रिकॉर्ड करने का उपयोग हमेशा नहीं किया जाता है।
हाइब्रिड फ्रेमवर्क
हाइब्रिड फ्रेमवर्क डेटा-ड्रिवन फ्रेमवर्क (डीडीएफ) और कीवर्ड-ड्रिवन फ्रेमवर्क (केडीएफ) का संयोजन है, जहां एक ही परीक्षण में कई इनपुट के साथ कई परीक्षण मामलों को निष्पादित किया जा सकता है।
इस लेख में, KDF में उपयोग किए गए सभी टेस्ट केस एक ही टेस्ट में निष्पादित किए जाएंगे। सभी टेस्ट केस के लिए कीवर्ड और स्क्रिप्ट KDF के समान ही हैं। हालांकि, TC3: ऑर्डर खोलना पैरामीटराइज़्ड है। इसलिए, इस टेस्ट केस की स्क्रिप्ट एक्सेल फ़ाइल से ऑर्डर नंबर प्राप्त करने और ग्राहक का नाम एक्सेल फ़ाइल में लिखने के लिए लिखी गई है।
टेस्ट केस 1: एप्लीकेशन में लॉग इन करें
कीवर्ड: लॉग इन करें ()
टेस्ट केस 2: ऑर्डर डालें
कीवर्ड:इन्सर्टऑर्डर()
टेस्ट केस3: कई ऑर्डर नंबरों के लिए ऑर्डर खोलें
कीवर्ड:ओपनऑर्डर()
Descriptआयन: यहां DDF विकसित करने के लिए प्रयुक्त की गई उसी स्क्रिप्ट का उपयोग किया जाता है, जिससे कई पुनरावृत्तियों के लिए परीक्षण मामला प्राप्त होता है।
स्क्रिप्ट:
टेस्ट केस 4: ऑर्डर हटाएँ
कीवर्ड:डिलीटऑर्डर()
टेस्ट केस5: एप्लिकेशन बंद करें
कीवर्ड:क्लोजऐप()
इस सरल विधि का पालन करके, TC3 का पैरामीटराइज़ेशन प्राप्त किया जाता है। यदि लागू हो, तो अन्य सभी परीक्षण मामलों को भी उसी परीक्षण में पैरामीटराइज़ किया जा सकता है।
ऊपर दिया गया उदाहरण हाइब्रिड फ्रेमवर्क को डिजाइन करने का एक बहुत ही सरल तरीका है। इसी तरह का फ्रेमवर्क डिस्क्रिप्टिव प्रोग्रामिंग का उपयोग करके भी प्राप्त किया जा सकता है।
फायदे
- हाइब्रिड फ्रेमवर्क के साथ डिज़ाइन किए गए परीक्षण को चलाने में लगने वाला समय अन्य फ्रेमवर्क की तुलना में अपेक्षाकृत कम है
- इसका उपयोग तब किया जा सकता है जब हमें एक ही टेस्ट सूट में किसी विशेष टेस्ट केस से जुड़े सभी टेस्ट केस और इनपुट की आवश्यकता होती है।
हानि
- विभिन्न ढांचे को संयोजित करने का स्पष्ट ज्ञान आवश्यक है।




















