what is test harness
मैं लेबल का बहुत बड़ा प्रशंसक नहीं हूं। यहाँ मेरा उससे मतलब है।
अगर मुझे यह निर्धारित करने से पहले कुछ पहलुओं की जांच करनी है कि क्या QA शुरू किया जा सकता है या नहीं, तो मैं बस एक सूची बनाऊंगा और कार्रवाई करूंगा। मेरी राय में, इससे कोई फर्क नहीं पड़ता कि मैं आधिकारिक तौर पर इसे 'टेस्ट तत्परता समीक्षा' ऑपरेशन कहता हूं या नहीं - जब तक मैं कर रहा हूं कि मैं क्या करने वाला हूं, मुझे लगता है कि इसे एक विशिष्ट नाम या लेबल कहने की कोई आवश्यकता नहीं है। ।
लेकिन मैं सही किया। हाल ही में, मेरी कक्षा में, मैं सॉफ्टवेयर विकास के लिए एजाइल-स्क्रैम मॉडल सिखा रहा था। वहाँ था एक सवाल ' कैसे चुस्त तरीके से परीक्षण किया जाता है? “मैं दो तरीकों की व्याख्या कर रहा था- एक वह जगह है जहाँ हम इसे प्रत्येक स्प्रिंट के भीतर शामिल करने की कोशिश करते हैं और दूसरा एक सर्वोत्तम अभ्यास है जो मैंने पहले हाथ से लागू करने से सीखा है- जो कि विकास के संबंध में क्यूए स्प्रिंट को पीछे छोड़ना है।
मेरे छात्रों में से एक ने मुझसे पूछा कि क्या कोई दूसरा नाम है और मैंने ऐसा नहीं किया क्योंकि मैंने कभी खुद के नामों पर जोर नहीं दिया।
लेकिन उस समय, मुझे लगा कि यह सुनिश्चित करने के लिए कि किसी प्रक्रिया को लेबल करना कितना महत्वपूर्ण है, यह सुनिश्चित करने के लिए कि हमारे पास उस प्रक्रिया को संदर्भित करने के लिए एक शब्द है जिसके बारे में हम बात कर रहे हैं।
इसलिए, आज हम बस यही करने जा रहे हैं: 'टेस्ट हार्नेस' शब्द के पीछे की प्रक्रिया को जानें।
जैसा कि मैंने अपने पिछले कुछ लेखों में उल्लेख किया है: नाम के शाब्दिक अर्थ से बहुत कुछ समझा जा सकता है। तो, 'हार्नेस' का अर्थ क्या है और क्या नहीं, यह लागू होता है, के बड़े शब्दकोश के लिए अपने शब्दकोश की जांच करें, इस मामले में, हम अंत में देखेंगे।
ऐसे दो संदर्भ हैं जहाँ टेस्ट हार्नेस का उपयोग किया जाता है:
- स्वचालन परीक्षण
- एकीकरण जांच
पहले एक के साथ शुरू होता है:
आप क्या सीखेंगे:
- प्रसंग # 1: टेस्ट ऑटोमेशन में टेस्ट हारनेस
- संदर्भ # 2: एकीकरण परीक्षण में दोहन
- निष्कर्ष के तौर पर:
- अनुशंसित पाठ
संदर्भ # 1: टेस्ट ऑटोमेशन में टेस्ट हारनेस
में स्वचालन परीक्षण विश्व, टेस्ट हार्नेस फ्रेमवर्क और सॉफ्टवेयर सिस्टम को संदर्भित करता है जिसमें इन लिपियों को चलाने के लिए परीक्षण स्क्रिप्ट, आवश्यक पैरामीटर (दूसरे शब्दों में, डेटा) होते हैं, परीक्षण के परिणाम इकट्ठा करते हैं, उनकी तुलना (यदि आवश्यक हो) और परिणामों की निगरानी करते हैं।
मैं एक उदाहरण की मदद से इसे सरल बनाने का प्रयास करने जा रहा हूं।
उदाहरण:
अगर मैं उस प्रोजेक्ट के बारे में बात कर रहा था जो उपयोग करता है एचपी क्विक टेस्ट प्रोफेशनल (अब UFT) कार्यात्मक परीक्षण के लिए, एचपी एएलएम सभी स्क्रिप्ट्स, रन और परिणामों को व्यवस्थित करने और प्रबंधित करने के लिए लिंक किया गया है और डेटा को MS Access DB से चुना गया है - इस परियोजना के लिए निम्नलिखित परीक्षण हार्नेस होगा:
जावा विधि जो एक सरणी लेता है
- QTP (UFT) सॉफ़्टवेयर स्वयं
- स्क्रिप्ट और भौतिक स्थान जहाँ वे संग्रहीत हैं
- टेस्ट सेट करता है
- एमएस एक्सेस डीबी मापदंडों, डेटा या परीक्षण स्क्रिप्ट को आपूर्ति की जाने वाली विभिन्न स्थितियों के लिए
- एचपी एएलएम
- परीक्षण के परिणाम और तुलनात्मक निगरानी गुण
जैसा कि आप देख सकते हैं, सॉफ्टवेयर सिस्टम (ऑटोमेशन, टेस्ट मैनेजमेंट, आदि), डेटा, स्थितियां, परिणाम - ये सभी टेस्ट हार्नेस का एक अभिन्न हिस्सा बन जाते हैं - केवल एक्सटी में ही अपवर्जन होना।
प्रसंग # २: इंटीग्रेशन टेस्टिंग में टेस्ट हारनेस
अब यह पता लगाने का समय है कि टेस्ट हार्नेस का क्या मतलब है के संदर्भ 'एकीकरण जांच' ।
एकीकरण परीक्षण कोड के दो या मॉड्यूल (या इकाइयों) को एक साथ रखना है जो एक दूसरे के साथ बातचीत करते हैं और यह जांचने के लिए कि संयुक्त व्यवहार अपेक्षित है या नहीं।
आदर्श रूप से, दो मॉड्यूलों का एकीकरण परीक्षण होना चाहिए और जब दोनों 100% तैयार हों, यूनिट परीक्षण किया और जाने के लिए अच्छा हो, तो इसे करना संभव होगा।
हालांकि, हम एक आदर्श दुनिया में नहीं रहते हैं- जिसका अर्थ है, कोड के एक या एक से अधिक मॉड्यूल / इकाइयां जो एकीकरण परीक्षण के घटक तत्व हैं, उपलब्ध नहीं हो सकते हैं। इस स्थिति को हल करने के लिए हमारे पास स्टब और ड्राइवर हैं।
स्टड आमतौर पर कोड का एक टुकड़ा होता है जो इसके फ़ंक्शन में सीमित होता है और कोड के वास्तविक मॉड्यूल के लिए स्थानापन्न या प्रॉक्सी करेगा जो इसकी जगह लेने की आवश्यकता है।
उदाहरण: इसे और समझाने के लिए, मैं एक परिदृश्य का उपयोग करता हूँ
यदि एक इकाई ए और यूनिट बी है जिसे एकीकृत किया जाना है। इसके अलावा, यूनिट ए यूनिट बी या दूसरे शब्दों में, यूनिट ए को यूनिट बी कहता है।
यूनिट ए यदि 100% उपलब्ध है और यूनिट बी नहीं है, तो डेवलपर कोड का एक टुकड़ा लिख सकता है जो इसकी क्षमता में सीमित है (इसका मतलब यूनिट बी है यदि इसमें 10 विशेषताएं हैं, तो केवल 2 या 3 जो एकीकरण के लिए महत्वपूर्ण हैं A के साथ) विकसित किया जाएगा और एकीकरण के लिए उपयोग किया जाता है। इसे ए कहते हैं STUB।
अब एकीकरण होगा: यूनिट ए-> स्टब (बी के लिए प्रतिस्थापन)
दूसरी ओर, यदि यूनिट ए 0% उपलब्ध है और यूनिट बी 100% उपलब्ध है, तो सिमुलेशन या प्रॉक्सी को यहां यूनिट ए होना चाहिए। इसलिए जब एक कॉलिंग फ़ंक्शन को एक सहायक कोड द्वारा बदल दिया जाता है, तो इसे कॉल कहा जाता है चालक ।
इस मामले में एकीकरण, होगा : चालक (ए के लिए प्रतिस्थापन) -> यूनिट बी
संपूर्ण ढांचा: एकीकरण परीक्षण करने के लिए स्टब्स और / या ड्राइवरों के नियोजन, निर्माण और उपयोग की प्रक्रिया को टेस्ट हार्नेस कहा जाता है।
ध्यान दें : उपरोक्त उदाहरण सीमित है और वास्तविक समय का परिदृश्य इतना सरल या उतना सरल नहीं हो सकता है। वास्तविक समय के अनुप्रयोगों में जटिल और समग्र एकीकरण बिंदु होते हैं।
निष्कर्ष के तौर पर:
हमेशा की तरह, एसटीएच का मानना है कि परिभाषाओं की सबसे तकनीकी शब्द के सरल, शाब्दिक अर्थ से भी लिया जा सकता है।
मेरे स्मार्टफोन का शब्दकोश मुझे बताता है कि एक 'हार्नेस' है (क्रिया के संदर्भ में देखें):
“प्रभावी उपयोग के लिए शर्तों को लाने के लिए; किसी विशेष छोर के लिए नियंत्रण हासिल करना; “
इसका अनुसरण करना और परीक्षण के लिए इसे अपनाना:
'एक परीक्षण हार्नेस बस सही फ्रेमवर्क बनाने के लिए है और इसे (और इसके सभी घटक तत्वों) का उपयोग पूरी गतिविधि को नियंत्रित करने के लिए किया जाता है ताकि स्थिति का अधिकतम लाभ मिल सके- चाहे स्वचालन या एकीकरण। “
वहां, हम अपना मामला शांत करते हैं।
खत्म करने से पहले कुछ और बातें:
Q. टेस्ट हार्नेस के क्या फायदे हैं?
अब, आप पूछेंगे कि मानव जीवन के लिए सांस का महत्व क्या है - यह आंतरिक है, क्या यह नहीं है? इसी तरह, प्रभावी रूप से परीक्षण करने के लिए एक ढांचा दिए गए जैसा है। लाभ, अगर हमें इसे कई शब्दों में लिखना है- तो मैं कहूंगा, हर परीक्षण प्रक्रिया का एक परीक्षण दोहन है कि क्या हम सचेत रूप से कहते हैं कि यह 'टेस्ट हार्नेस' है या नहीं। यह मार्ग, गंतव्य और यात्रा के अन्य सभी गतिकी को जानने जैसा है।
Q. टेस्ट हार्नेस और टेस्ट फ्रेमवर्क में क्या अंतर है ?
मैं व्यक्तिगत रूप से सोचता हूं कि संबंधित अवधारणाओं को समझने के दौरान तुलना और विपरीत करना अक्सर सही दृष्टिकोण नहीं होता है क्योंकि लाइनें अक्सर धुंधली होती हैं। उस प्रश्न के उत्तर के रूप में, मैं कहूंगा, टेस्ट हार्नेस विशिष्ट है और टेस्ट फ्रेमवर्क सामान्य है। उदाहरण के लिए, एक परीक्षण दोहन में उपयोग की जाने वाली लॉगिन आईडी के नीचे परीक्षण प्रबंधन उपकरण की सटीक जानकारी शामिल होगी। दूसरी ओर एक परीक्षण ढांचा, बस यह कहेगा कि एक परीक्षण प्रबंधन उपकरण संबंधित गतिविधियों को करेगा।
प्र क्या कोई टेस्ट हार्नेस उपकरण हैं ?
टेस्ट हार्नेस में टूल शामिल होते हैं - जैसे ऑटोमेशन सॉफ्टवेयर, टेस्ट मैनेजमेंट सॉफ्टवेयर आदि। हालांकि, टेस्ट हार्नेस को लागू करने के लिए कोई विशेष टूल नहीं हैं। सभी या कोई भी उपकरण टेस्ट हार्नेस का एक हिस्सा हो सकते हैं: QTP, JUnit, HP ALM- ये सभी किसी भी टेस्ट हार्नेस के घटक उपकरण हो सकते हैं।
लेखक के बारे में: यह लेख एसटीएच टीम की सदस्य स्वाति एस ने लिखा है।
और, हमेशा परिभाषाओं के साथ, हमेशा राय में मतभेद होते हैं। हम आपकी राय का स्वागत करते हैं और जो आप सोचते हैं उसे सुनना पसंद करते हैं। कृपया नीचे टिप्पणी, प्रश्न या सुझाव छोड़ने के लिए स्वतंत्र महसूस करें।
अनुशंसित पाठ
- एचपी लोडरनर ट्यूटोरियल के साथ लोड परीक्षण
- नौसिखिए परीक्षकों के लिए सॉफ्टवेयर परीक्षण सलाह
- सर्वश्रेष्ठ सॉफ्टवेयर परीक्षण उपकरण 2021 (क्यूए टेस्ट स्वचालन उपकरण)
- यूनिट परीक्षण, एकीकरण परीक्षण और कार्यात्मक परीक्षण के बीच अंतर
- क्या परीक्षणकर्ता स्वचालन के कारण परीक्षण से अधिक अपनी पकड़ खो रहे हैं?
- वैश्विक सॉफ्टवेयर परीक्षण व्यापार जल्द ही $ 28.8 बिलियन तक पहुंचने के लिए
- सॉफ्टवेयर टेस्टर्स में मोटिवेशन अलाइव कैसे रखें?
- परीक्षण प्राइमर eBook डाउनलोड