how translate manual test cases into automation scripts
उदाहरण के साथ डेटा वेयरहाउस में आयामी मॉडलिंग
यह मूल 'कैसे-कैसे' लेख होगा और कोई स्वचालन उपकरण-विशिष्ट नहीं है। मूल रूप से, मैं यहां जो करने की कोशिश कर रहा हूं, वह विचार प्रक्रिया है जो शब्दों में एक स्वचालन परीक्षण मामला बनाने में जाती है। हमेशा की तरह, मुझे उम्मीद है कि यह आप सभी के लिए उपयोगी होगा।
ऑटोमेशन टेस्ट केस या स्क्रिप्ट कैसे डिजाइन करें?
स्वचालन हमेशा मैनुअल परीक्षण का पालन करता है। आमतौर पर, ऑटो पर पहले से ही मैनुअल परीक्षण के एक या अधिक राउंड किए जाएंगे। इसका मतलब है कि मैनुअल टेस्ट मामले पहले से मौजूद हैं और कम से कम एक बार निष्पादित किए गए हैं।
उदाहरण के लिए, मान लेना निम्नलिखित है मैनुअल टेस्ट केस । यह बस Gmail.com साइट पर लॉग इन कर रहा है। अब, यह काफी सरल लग रहा है, क्या यह नहीं है? यह एक स्वचालन स्क्रिप्ट कैसे बन जाती है? (बड़ा करने के लिए इमेज़ पर क्लिक करें)
आप क्या सीखेंगे:
एक स्वचालन स्क्रिप्ट में इस मैनुअल टेस्ट केस का अनुवाद कैसे करें?
निम्नलिखित दिशानिर्देश हैं जिन्हें हम एक स्वचालन स्क्रिप्ट में अनुवाद प्राप्त करने के लिए अनुसरण करने जा रहे हैं:
(1) ऑटो की स्थिति: स्तंभ पूर्वधारणा एक निश्चित चरण को निष्पादित करने के लिए पृष्ठभूमि की एक विशेष स्थिति के अलावा कुछ भी नहीं है। यह दो परिदृश्यों में विशेष रूप से महत्वपूर्ण है:
- परीक्षण शुरू करने के लिए: इस मामले में, हमें उपलब्ध ब्राउज़र और लॉन्च की आवश्यकता है। (उपयोगकर्ता नाम और पासवर्ड की उपलब्धता से थोड़ी देर में निपटा जाएगा)। अब, स्वचालन दुनिया में एक ही बात कैसे लिखनी है? QTP पर विचार करें। आपके पास प्रोग्रामेटिक स्टेटमेंट का उपयोग करके या तो ब्राउज़र लॉन्च करने का विकल्प है या आप गुणों को सेट करने के लिए run रिकॉर्ड और रनिंग सेटिंग ’संवाद का उपयोग कर सकते हैं। इन गुणों को सही ढंग से सेट करना बहुत महत्वपूर्ण है। अक्सर यही कारण है कि एक विशेष कोड मशीन में काम करेगा और दूसरों में काम नहीं करेगा।
- एक निश्चित कदम निष्पादित करने के लिए : चरण 2 के लिए प्रदर्शन किया जा करने के लिए हमें चरण 1 की आवश्यकता है और पूरा किया जाना चाहिए। मैन्युअल रूप से ऐसा करने के लिए, हम केवल तब तक प्रतीक्षा कर सकते हैं जब तक कि चरण निष्पादन नहीं हो जाता है और पृष्ठ पूरी तरह से लोड हो जाता है। वांछित स्थिति के सही होने तक प्रतीक्षा करने के लिए अपने स्वचालन स्क्रिप्ट में सिंक का उपयोग करें या प्रतीक्षा करें।
ध्यान दें: जब आप डेटा के कई सेट के लिए समान कोड चला रहे हैं, तो आप यह सुनिश्चित करना चाहेंगे कि आप AUT को उस स्थिति में लौटा रहे हैं जो अगले पुनरावृत्ति शुरू होने से पहले होना चाहिए।
# 2) टेस्ट स्टेप्स
हम मैन्युअल टेस्ट चरणों को 3 श्रेणियों में वर्गीकृत कर सकते हैं:
- आँकड़ा प्रविष्टि : डेटा एंट्री स्टेप वह हैं जहां आप अपने AUT के इनपुट के रूप में कुछ जानकारी दर्ज कर रहे हैं।
- ऑटो राज्य के चरणों का परिवर्तन : ये चरण वे हैं जो आपके AUT के लिए परिवर्तन का कारण बनेंगे। इसमें एक नया पृष्ठ, एक निश्चित फ़ील्ड दिखाई दे रहा है, एक संपादन बॉक्स संपादन योग्य हो सकता है, आदि।
- मेल : जैसा कि नाम से ही स्पष्ट है, यह उपरोक्त दोनों प्रकारों का संयोजन है। चेकबॉक्स का मामला लें, जब चालू होता है तो एक निश्चित क्षेत्र सक्रिय हो जाएगा। उस स्थिति में, आप चेकबॉक्स फ़ील्ड के लिए 'True' मान दर्ज कर रहे हैं और यह आपके AUT की स्थिति में भी परिणाम करता है।
उपरोक्त परीक्षण मामले में, केवल टाइप 1 और 2 चरण मौजूद हैं।
- टाइप 1: परीक्षण चरण 2 और 3
- टाइप 2: टेस्ट चरण 1 और 4
किसी भी उपकरण का उपयोग करके स्वचालन स्क्रिप्ट बनाने के लिए पूर्व-आवश्यकता कुछ समय बिताने के लिए उपकरण के साथ-साथ ऑटो का विश्लेषण करना है। यह देखने की कोशिश करें कि दोनों एक दूसरे के साथ कैसे बातचीत करते हैं। उदाहरण के लिए, QTP में 3 रिकॉर्डिंग तरीके हैं और हर एक अलग तरीके से काम करता है।
यदि आप जानते हैं कि यह वस्तुओं की पहचान कैसे करता है, तो आपको पता होगा कि कौन सा उपयोग करना है और उनका बेहतर उपयोग करना है। यदि आपके पास एक वेब ऐप है जहां क्यूटीपी वस्तुओं को आसानी से पहचान सकता है, तो आप सामान्य मोड का उपयोग कर सकते हैं। यदि नहीं, तो आपको एनालॉग या निम्न-स्तरीय विधियों का उपयोग करना पड़ सकता है।
स्वचालन कदम:
- डेटा प्रविष्टि चरण स्वचालन और मैनुअल विधियों में बहुत भिन्न नहीं हैं। आप सभी डेटा दर्ज करते हैं। आपके द्वारा फ़ील्ड को संदर्भित करने का तरीका अलग है। चूंकि यह चरणों को निष्पादित करने वाली मशीन होगी, हमें बस यह सुनिश्चित करना होगा कि हम ऑटो में फ़ील्ड्स को इस तरह से संदर्भित करें कि उपकरण समझता है। इसका मतलब है कि आपको कोड में उपयोग किए गए तार्किक नाम का उपयोग करना होगा।
- ऑटो / संयोजन चरणों के परिवर्तन के लिए एक मैनुअल परिदृश्य में, आप कार्रवाई करते हैं (क्लिक करने या जांचने या दर्ज करने) और एक बार में परिवर्तन की पुष्टि करते हैं। लेकिन एक स्वचालन परिदृश्य में यह संभव नहीं है। इसलिए हमें यह सुनिश्चित करना होगा कि हम कार्रवाई और सत्यापन / सत्यापन के लिए कदम जोड़ें।
- टिप्पणियाँ पठनीयता के लिए।
- डिबगिंग स्टेटमेंट - ये विशेष रूप से महत्वपूर्ण हैं जिसमें आप स्वयं परीक्षण बना रहे हैं और परीक्षण कर रहे हैं। परीक्षण निष्पादन के विभिन्न चरणों में विभिन्न मूल्यों को आउटपुट करने के लिए अक्सर संदेश बॉक्स का उपयोग करने का प्रयास करें। इससे आपको टेस्ट में विजिबिलिटी मिलेगी क्योंकि और कुछ नहीं होगा।
- आउटपुट स्टेटमेंट - सेवा मेरे परिणाम या किसी अन्य बाहरी जगह जैसे कि नोटपैड या एक्सेल शीट पर लिखें।
# 3) सत्यापन और सत्यापन
सत्यापन और सत्यापन के बिना, परीक्षण का इरादा खो जाता है। आमतौर पर आपको एक चेकपॉइंट का उपयोग करना होगा (जरूरी नहीं कि इनबिल्ट वाले का मतलब हो)। इसलिए आपको तर्क बनाने के लिए बहुत सारे सशर्त बयानों और लूप स्टेटमेंट्स का भी उपयोग करना होगा।
विचार करने के लिए एक महत्वपूर्ण बात है- वह विशेषता जिसके आधार पर आप अपने V & V को आधार बना रहे हैं, अस्पष्ट नहीं होना चाहिए। उदाहरण के लिए, सफल लॉगिन के लिए, नए ईमेलों की संख्या के लिए इनबॉक्स पृष्ठ प्रदर्शन न देखें, क्योंकि यह एक निरंतर मूल्य नहीं है।
तो आपको कुछ ऐसा चुनना होगा जो हर बार सच होता है कि संचालन का एक सेट होता है - बिना असफल।
# 4) परीक्षण डेटा
निम्नलिखित कुछ प्रश्न हैं जिन्हें आप अपनी टेस्ट डेटा आवश्यकताओं के लिए उत्तर देने पर विचार कर सकते हैं:
- इसे कहां रखें?
- हार्डकोड को या नहीं?
- सुरक्षा चिंताएं?
- पुन: प्रयोज्य चिंता?
जब आप मैन्युअल परीक्षण स्क्रिप्ट को देखते हैं, तो आप देखेंगे कि परीक्षण डेटा होने के साथ, उपलब्ध उपयोगकर्ता नाम और पासवर्ड भी परीक्षण शुरू करने के लिए पूर्व शर्त में से एक है।
# 5) परिणाम
मैनुअल टेस्ट केस के लिए, आप प्रत्येक चरण का परिणाम 'वास्तविक परिणाम' कॉलम में डाल सकते हैं। ऑटोमेशन टूल की रिजल्ट फ़ाइल में निष्पादित होने पर प्रत्येक चरण का परिणाम होता है।
इन दिनों ऑटोमेशन टूल्स में बहुत ही मजबूत रिपोर्टिंग फीचर हैं। हालाँकि, आपको अभी भी इसकी आवश्यकता होगी परीक्षा के परिणाम । इसलिए परिणाम फ़ाइल में अक्सर लिखने के चरणों को शामिल करें ताकि आपको पता चल जाए कि निष्पादन के समय क्या हुआ था।
यदि आप जिस टूल का उपयोग कर रहे हैं, वह परिणाम फ़ाइल में लिखने का समर्थन नहीं करता है, तो यह उत्पन्न होता है, यह एक अच्छा विचार है कि कम से कम एक एक्सेल शीट या नोटपैड है जो प्रत्येक परीक्षण से जुड़ा हुआ है ताकि आप निष्पादन की स्थिति के बारे में टिप्पणी कर सकें।
# 6) पोस्ट ऑपरेशन
कैसे चरित्र अजगर द्वारा स्ट्रिंग विभाजित करने के लिए
एक बार जब आप परीक्षण के साथ कर लेते हैं, तो इसे अपने मैनुअल परीक्षण मामले में ब्राउज़र को बंद करने या ऑटो आदि को बंद करने के लिए स्पष्ट रूप से उल्लेख करने की आवश्यकता नहीं है। एक परीक्षक के रूप में, आप इसे पूरी लगन से करेंगे। स्वचालन परीक्षण के मामले में, आप अपनी स्क्रिप्ट में इन चरणों को शामिल कर सकते हैं। सफाई - मैं इन गतिविधियों को क्या कहता हूं। आपके द्वारा बनाए गए सभी कनेक्शनों को मारें। सभी ऐप्स को बंद करें। स्मृति को मुक्त करें।
इन दिशानिर्देशों का उपयोग करते हुए मैं अपने मैनुअल टेस्ट मामले को QTP टेस्ट स्क्रिप्ट में अनुवाद करता हूं जो VB स्क्रिप्टिंग का उपयोग करता है। निम्नलिखित परिणाम है: (विस्तार करने के लिए छवि पर क्लिक करें)
प्रत्येक चरण के माध्यम से चलो
चरण 1: पूर्वगामी। हम IE को Gmail.com URL के साथ प्रोग्रामेटिक रूप से लॉन्च कर रहे हैं।
चरण 2 और 7: सिंक स्टेटमेंट। जैसा कि हमने ऊपर चर्चा की है, ये सुनिश्चित करने के लिए महत्वपूर्ण हैं कि अगला चरण निष्पादन से पहले ऑटो वांछित स्थिति में आए।
चरण 3 और 4: आँकड़ा प्रविष्टि। सारा डेटा स्क्रिप्ट में हार्डकोड किया गया है। हालांकि यह उचित नहीं है, यह एक शुरुआत है
चरण 5: ऑटो स्टेप का परिवर्तन। चरण 5 में साइन इन बटन पर क्लिक करना शामिल है। जब इस स्टेटमेंट पर अमल हो जाता है तो आपको V & V की आवश्यकता नहीं होगी। ऐसा इसलिए है क्योंकि एक बाद का बयान है और अगर वह चल सकता है; इसका मतलब है कि इससे पहले कि यह सफल रहा है। लेकिन अगर आप अतिरिक्त मेहनती हैं, तो आप यहां एक को शामिल कर सकते हैं।
चरण 6 और 8: टिप्पणियाँ
चरण 9 और 11: सशर्त बयान। वी एंड वी / चेकपॉइंट। हम यह देखने की कोशिश कर रहे हैं कि परिणाम पृष्ठ पर कोई इनबॉक्स लिंक है या नहीं, यह देख कर लॉगिन सफल रहा है। यदि आप ध्यान से देखते हैं, तो आंतरिक पाठ, 'इनबॉक्स। *' के साथ लिंक किया जाता है। किसी भी संख्या में नए ईमेल (जो कि परिवर्तनशील है) की परवाह किए बिना, यदि आपके पास एक इनबॉक्स लिंक (जो हमेशा एक स्थिर है) उपलब्ध है, तो इसका मतलब है कि चेकपॉइंट पारित हो गया है।
चरण 10: संदेश बॉक्स। दृश्यता के लिए
चरण 12 और 13: ये सफाई की गतिविधियाँ हैं। आप खाते से साइन आउट कर रहे हैं और ब्राउज़र को बंद कर रहे हैं।
निष्कर्ष
इसलिए, आप देखते हैं कि जब आप एक अच्छी तरह से लिखित मैनुअल स्क्रिप्ट और बुनियादी दिशानिर्देशों का पालन करने के लिए सेट होते हैं, तो ऑटोमेशन स्क्रिप्ट कितनी आसानी से सामने आती है। चूंकि यह एक लेख से संबंधित नहीं है फ़्रेमवर्क , मैं फ़ंक्शंस, पुन: प्रयोज्यता कारकों, पैरामीटरकरण आदि से स्पष्ट रहा, टेस्ट स्क्रिप्ट मौलिक बिल्डिंग ब्लॉक होने के कारण, जब आप मूल बातें सही रखते हैं, तो स्क्रिप्ट पर सुधार करना आसान होता है।
क्या कोई अन्य कारक हैं जिन पर आप विचार करते हैं, एक और तरीका जो आपको आसान लगता है या कोई दिशानिर्देश जो आपको अनुसरण करना मुश्किल लगता है? कृपया मुझे टिप्पणियों में अपनी प्रतिक्रिया दें।
यह पोस्ट एसटीएच टीम की सदस्य स्वाति सीला ने लिखी है। वह विभिन्न बहुराष्ट्रीय कंपनियों के साथ काम करने के मैनुअल और स्वचालन परीक्षण अनुभव के 9 से अधिक वर्षों से चल रहा है। वह हमारी प्रशिक्षक भी हैं सॉफ्टवेयर परीक्षण क्यूए प्रशिक्षण पाठ्यक्रम । आप इस पाठ्यक्रम में रुचि रखते हैं, तो जाँच करें आगामी बैच अनुसूची यहाँ ।
PREV ट्यूटोरियल | अगले ट्यूटोरियल
अनुशंसित पाठ
- 10-चरण स्वचालन परीक्षण प्रक्रिया: अपने संगठन में स्वचालन परीक्षण कैसे शुरू करें
- हमें टेस्ट ऑटोमेशन के लिए फ्रेमवर्क की आवश्यकता क्यों है?
- मैनुअल और स्वचालन परीक्षण चुनौतियां
- मैनुअल और ऑटोमेशन प्रोजेक्ट्स के लिए टेस्ट प्लानिंग अंतर क्या है?
- किसी परियोजना के लिए किस प्रकार के परीक्षण की आवश्यकता है, यह कैसे तय करें? - मैनुअल या स्वचालन
- ऑटोमेशन परीक्षण क्या है (टेस्ट ऑटोमेशन शुरू करने के लिए अंतिम गाइड)
- QTP फ्रेमवर्क - टेस्ट ऑटोमेशन फ्रेमवर्क - कीवर्ड ड्रिवेन और रैखिक फ्रेमवर्क उदाहरण - QTP ट्यूटोरियल # 17
- शीर्ष 10 टेस्ट ऑटोमेशन रणनीतियाँ और सर्वोत्तम अभ्यास