सॉफ्टवेयर परिक्षण

शुरुआती के लिए एकीकरण परीक्षण ट्यूटोरियल

30 अक्टूबर, 2021

विषयसूची

एकीकरण परीक्षण क्या है?

एकीकरण परीक्षण को एक सॉफ्टवेयर परीक्षण प्रक्रिया के रूप में वर्णित किया जाता है जिसमें कई सॉफ्टवेयर मॉड्यूल तार्किक रूप से एकीकृत और परीक्षण किए जाते हैं। इस प्रक्रिया में, कई मॉड्यूल का पहले व्यक्तिगत रूप से परीक्षण किया जाता है और फिर एक एकीकृत इकाई के रूप में परीक्षण किया जाता है। यह देखने के लिए पूरे समूह की समीक्षा की जाती है कि एकीकृत मॉड्यूल अपेक्षित रूप से काम कर रहा है या नहीं।

यह सॉफ्टवेयर विकास के लिए एक व्यावहारिक दृष्टिकोण है जो निरंतर परीक्षण और संशोधन के माध्यम से उत्पाद को विकसित करने के लिए एक सावधानीपूर्वक प्रक्रिया लेता है। यह किसी एप्लिकेशन के मॉड्यूल या घटकों को धीरे-धीरे एकीकृत करके किया जाता है।

यह परीक्षण प्रकार लागू किया जाता है और परीक्षण के लिए एकत्र किया जाता है और स्थानीय रूप से निष्पादित एकीकरण परीक्षण योजना के भीतर परिभाषित किया जाता है। एकीकरण परीक्षण एक एकीकृत प्रणाली और परीक्षण के लिए तैयार एक प्रणाली प्रदान करते हैं। इन परीक्षणों का प्राथमिक फोकस विभिन्न घटकों के बीच परस्पर क्रिया का परीक्षण करना है।

एकीकरण परीक्षण बहुत महत्वपूर्ण हैं, क्योंकि सभी घटक और मॉड्यूल संयुक्त और परीक्षण किए जाते हैं। एकीकरण परीक्षण किसी भी कंपनी के लिए एक महत्वपूर्ण आवश्यकता बन जाता है जब वह एक नए व्यवसाय मॉडल, नई तकनीकों, या यहां तक ​​कि नए उत्पादों या सेवाओं में जाने की योजना बनाता है। एकीकरण परीक्षण परीक्षण चक्र का एक अनिवार्य हिस्सा है, जिससे परीक्षकों को कई इकाइयों को एकीकृत करने के बाद कमियों का पता लगाने की अनुमति मिलती है।

हमारे पास विभिन्न प्रकार के परीक्षण हैं जैसे इकाई का परीक्षण , सिस्टम परीक्षण , तथा स्वीकृति परीक्षण .

एकीकरण जांच

एकीकरण परीक्षण क्यों?

  • विफलताओं को अलग करने के लिए परीक्षण अधिक विश्वसनीय और अधिक आरामदायक होते हैं।
  • डमी या स्टब्स और ड्राइवरों का उपयोग किया जा सकता है।
  • एकीकरण परीक्षण डेवलपर में विश्वास लाता है।
  • तेज परीक्षण चलता है।
  • एकीकरण परीक्षण विकास जीवन चक्र के बहुत प्रारंभिक चरण में शुरू होता है, और डेवलपर्स देर से पहले बग पकड़ सकते हैं।
  • एकीकरण परीक्षण सिस्टम-स्तरीय त्रुटियों को पकड़ते हैं, जैसे कि एक टूटी हुई डेटाबेस योजना और गलत कैश एकीकरण।
  • विकासशील वातावरण में परीक्षण करने के लिए और अधिक आरामदायक।
  • सही परीक्षण बनाने से डेवलपर्स और परीक्षण इंजीनियरों दोनों के बीच एक सटीक फीडबैक लूप तंत्र मिलता है।
  • बेहतर कोड कवरेज।
  • कोड कवरेज को ट्रैक करने के लिए और अधिक आरामदायक।
  • एंड टू एंड टेस्टिंग के दौरान रीयल-टाइम उपयोग के मामलों को बनाने में प्रमुख रूप से मदद करता है।

इंटीग्रेशन टेस्ट में स्टब्स और ड्राइवर्स क्या हैं?

स्टब्स और ड्राइवर छद्म कोड या डमी कोड होते हैं जिनका उपयोग एकीकरण घटकों का परीक्षण करने के लिए किया जाता है जब एक या अधिक मॉड्यूल विकसित नहीं होते हैं और अन्य मॉड्यूल का परीक्षण करने के लिए आवश्यक होते हैं। यह एक प्रोग्राम है जो हार्ड एन्कोडेड कोड प्रदान करता है क्योंकि इनपुट एकीकरण परीक्षण में मॉड्यूल के आउटपुट को स्वीकार करता है।

आमतौर पर कॉलिंग प्रोग्राम के रूप में जाना जाता है, एकीकरण परीक्षण की कार्यप्रणाली में स्टब्स और ड्राइवर ऊपर से नीचे तक वांछनीय हैं। इसके विपरीत, ड्राइवर बॉटम-अप दृष्टिकोण के लिए आवेदन करते हैं। स्टब्स और ड्राइवर टेस्टर उन मॉड्यूल के व्यवहार का उपयोग और उत्तेजना कर सकते हैं जो अभी तक सॉफ्टवेयर के साथ एकीकृत नहीं हैं। इसके अलावा, वे लापता घटकों की गतिविधि को अनुकरण करने में मदद करते हैं।

एकीकरण परीक्षण के प्रकार/दृष्टिकोण क्या हैं?

बिग बैंग एकीकरण परीक्षण:

एक बड़ा धमाका एकीकरण परीक्षण सॉफ्टवेयर परीक्षण के लिए एक लाभकारी दृष्टिकोण है; यह एकीकरण परीक्षणों की शुरुआत में डेवलपर्स को उनके सॉफ़्टवेयर, सिस्टम और एप्लिकेशन के लिए एकीकरण परीक्षणों के एक पूर्ण सेट से लैस करता है।

बिग बैंग इंटीग्रेशन टेस्टिंग एक सतत परीक्षण है जो सिस्टम सेगमेंट के सिस्टम बनने से पहले होता है। यह सबसे आशाजनक तरीकों में से एक है सॉफ्टवेयर परिक्षण , जहां प्रणालियों और घटकों के निरंतर एकीकरण से एक पूर्ण प्रणाली या अनुप्रयोग का निर्माण होता है।

लाभ:

  • छोटी प्रणालियों के लिए उपयोगी।
  • मुख्य लाभ यह है कि एकीकरण परीक्षण शुरू होने से पहले सब कुछ समाप्त हो गया है।

नुकसान:

  • बहुत समय लेने वाला
  • एकीकरण में देरी के कारण विफलताओं के कारणों का पता लगाना मुश्किल है।
  • गंभीर विफलताओं की संभावना अधिक होती है, क्योंकि बिग बैंग परीक्षण में, सभी घटकों का एक साथ परीक्षण किया जाता है।
  • उत्पादन वातावरण में महत्वपूर्ण बग के उत्पन्न होने की उच्च संभावना है।
  • यदि कोई बग पाया जाता है, तो उसके मूल कारण को निर्धारित करने के लिए सभी मॉड्यूल को अलग करना बेहद मुश्किल हो रहा है।

वृद्धिशील एकीकरण परीक्षण

वृद्धिशील एकीकरण परीक्षणों में, प्रोग्रामर एक-एक करके दोषों को उजागर करने के लिए स्टब्स या ड्राइवरों का उपयोग करके मॉड्यूल को एकीकृत करते हैं। इस दृष्टिकोण में, दो या दो से अधिक मॉड्यूल को तार्किक रूप से एक दूसरे से सम्मिश्रण करके परीक्षण किया जाता है और फिर इसके उचित कामकाज के संबंध में परीक्षण किया जाता है। अन्य संबंधित मॉड्यूल क्रमिक रूप से एकीकृत होते हैं, और प्रक्रिया तब तक जारी रहती है जब तक कि सभी तार्किक रूप से संबंधित मॉड्यूल एकीकृत और सफलतापूर्वक परीक्षण नहीं किए जाते। इसके विपरीत, बिग बैंग एक और एकीकरण परीक्षण तकनीक है, जहां सभी मॉड्यूल एक शॉट में एकीकृत होते हैं।

वृद्धिशील परीक्षण दो प्रकार के होते हैं।

1. टॉप-डाउन दृष्टिकोण:

टॉप-डाउन एकीकरण परीक्षण वह दृष्टिकोण है जहां एक घटक निचले स्तर पर बनाया जाता है और उच्च स्तर पर एक घटक में एकीकृत होता है। टॉप-डाउन इंटीग्रेशन परीक्षण नीचे की तुलना में शीर्ष पर घटकों को एकीकृत करने पर अधिक ध्यान केंद्रित करते हैं। डेवलपर इस दृष्टिकोण के लिए स्टब्स का उपयोग कर सकता है। यह दृष्टिकोण कई तरह के प्रयासों के लिए है, जैसे लक्ष्य निर्धारण, बजट और पूर्वानुमान।

टॉप-डाउन इंटीग्रेशन टेस्ट अप्रोच पहले उच्च-स्तरीय मॉड्यूल और फिर तेजी से निचले-स्तरीय मॉड्यूल का परीक्षण करता है। यह विधि ऊपर से नीचे से शुरू होने वाले एकीकरण परीक्षणों के साथ, ऊपर से नीचे, ट्रैकिंग नियंत्रण प्रवाह और वास्तुशिल्प संरचनाओं से परीक्षण करने की अनुमति देती है। एकीकरण परीक्षण और परीक्षण के आउटपुट के लिए स्टब्स का उपयोग करते हुए सबसे आम अनुप्रयोग शीर्ष-से-नीचे दृष्टिकोण है।

लाभ:

  • यह विधि संचालन और रखरखाव संसाधनों को उतनी गंभीर रूप से प्रभावित नहीं करती जितनी नीचे से ऊपर की ओर आती है।
  • दोष स्थानीयकरण आसान है।
  • एक प्रारंभिक प्रोटोटाइप आसानी से प्राप्त किया जा सकता है।
  • प्रमुख डिजाइन खामियों को पहले पाया और ठीक किया जा सकता था।
  • प्राथमिकता मॉड्यूल का पहले परीक्षण किया जा सकता है।
  • इस दृष्टिकोण का लाभ यह है कि निर्णय बहुत जल्दी किए और कार्यान्वित किए जा सकते हैं।

नुकसान:

  • इस दृष्टिकोण के लिए कई स्टब्स की आवश्यकता होती है।
  • निचले स्तर पर मॉड्यूल का अक्षम रूप से परीक्षण किया जाता है।
  • पहले चरणों में सीमित कवरेज प्रदान करता है।
  • डेवलपर्स को शुरुआती चरण में कस्टम एडेप्टर विकसित करने पड़ सकते हैं।
  • कार्यान्वयन लागत अधिक होने की संभावना है।

2. बॉटम-अप दृष्टिकोण:

बॉटम-अप अप्रोच टॉप-डाउन इंटीग्रेशन टेस्ट के विपरीत है: सबसे निचली लेयर में मॉड्यूल्स का पहले परीक्षण और एकीकरण किया जाता है और फिर मूव पर अन्य मॉड्यूल्स के साथ क्रमिक रूप से एकीकृत किया जाता है।

बॉटम-अप इंटीग्रेशन टेस्ट यूनिट परीक्षणों से शुरू होते हैं, इसके बाद मॉड्यूलर निर्माण होता है। सबसे पहले, पैरेंट मॉड्यूल का परीक्षण किया जाता है, फिर चाइल्ड मॉड्यूल, और इसी तरह जब तक इसे एकीकृत नहीं किया जाता है।

परीक्षण ड्राइवर संचालित होता है और निम्न-स्तरीय मॉड्यूल से संबंधित डेटा पास करता है, और जब दूसरे मॉड्यूल में कोड तैयार होता है, तो ड्राइवर वास्तविक मॉड्यूल को बदल देता है। निचले मॉड्यूल का परीक्षण किया जाता है, और उच्च-स्तरीय मॉड्यूल का परीक्षण उसी तरह किया जाता है जैसे टॉप-अप एकीकरण परीक्षण में, लेकिन एक अलग ड्राइवर के साथ।

लाभ:

  • आसान गलती स्थानीयकरण।
  • बॉटम-अप दृष्टिकोण का पालन करने में लगने वाला समय अन्य परीक्षण विधियों की तुलना में बहुत कम है।
  • उत्पाद के बारे में उपयोगकर्ता जागरूकता।
  • स्वचालन कई मैनुअल प्रक्रियाओं को प्रतिस्थापित कर सकता है।
  • प्रभावी लागत।
  • आसान परीक्षण अवलोकन।
  • लाभप्रद अगर कार्यक्रम के निचले भाग में बड़ी खामियां होती हैं।

नुकसान

  • कार्यक्रम, समग्र रूप से, अंतिम मॉड्यूल जोड़े जाने तक मौजूद नहीं है।
  • एक प्रारंभिक प्रोटोटाइप संभव नहीं है।
  • बॉटम-अप रणनीति व्यावसायिक प्रक्रियाओं के बजाय मौजूदा बुनियादी ढांचे द्वारा चलाई जाती है।
  • अनिवार्य मॉड्यूल (सॉफ्टवेयर आर्किटेक्चर के शीर्ष स्तर पर) जो अनुप्रयोग प्रवाह को नियंत्रित करते हैं, उनका अंतिम परीक्षण किया जाता है और उनमें दोष हो सकते हैं।

सैंडविच / हाइब्रिड परीक्षण

सैंडविच टेस्टिंग बॉटम-अप और टॉप-डाउन अप्रोच का मिलन है, इसलिए यह बॉटम-अप अप्रोच और टॉप-डाउन अप्रोच दोनों का फायदा उठाता है।

उस चरण के दौरान, प्रत्येक मॉड्यूल के बीच इंटरफ़ेस और संचार का परीक्षण किया जाता है। इसे हाइब्रिड इंटीग्रेशन टेस्टिंग के नाम से भी जाना जाता है। संशोधित सैंडविच परीक्षण अविश्वसनीय रूप से फायदेमंद होते हैं, जिससे परीक्षकों को एकीकृत होने पर विभिन्न सिस्टम घटकों का परीक्षण करने में मदद मिलती है।

लाभ:

  • सैंडविच परीक्षण दृष्टिकोण उन व्यापक परियोजनाओं के लिए उपयोगी है जिनमें उप-परियोजनाएं हैं।
  • यह समानांतर परीक्षण की अनुमति देता है।
  • यह समय प्रभावी है।
  • डेवलपर्स इस दृष्टिकोण की सराहना करते हैं क्योंकि वे गठबंधन करते हैं लाभ सभी संबद्ध परिक्षण चौखटे, पेशेवरों को स्पष्ट तरीके से उनके बारे में सबसे अच्छा लाभ उठाने में मदद करते हैं।

नुकसान:

  • सैंडविच टेस्टिंग काफी महंगी है।
  • सैंडविच परीक्षण का उपयोग उन प्रणालियों के लिए नहीं किया जा सकता है, जिनमें विभिन्न घटकों/मॉड्यूल के साथ बहुत अधिक अन्योन्याश्रयता होती है।
  • सैंडविच टेस्टिंग/हाइब्रिड टेस्टिंग में स्टब्स और ड्राइवर्स की जरूरत बहुत ज्यादा होती है।
  • परीक्षण जटिल हो सकता है।
  • दोषों का स्थानीयकरण करना मुश्किल है।
  • मिश्रित परीक्षण के लिए उच्च लागत की आवश्यकता होती है।
  • यह दृष्टिकोण छोटी परियोजनाओं के लिए उपयुक्त नहीं है।

एकीकरण परीक्षण कैसे करें?

आमतौर पर, एकीकरण परीक्षण इकाई परीक्षण के बाद आता है। एक बार सभी व्यक्तिगत इकाइयों और परीक्षण के बाद, डेवलपर्स उन परीक्षण मॉड्यूल को जोड़ना शुरू कर देते हैं और एकीकरण परीक्षण करना शुरू कर देते हैं। यहां प्रक्रिया का मुख्य लक्ष्य इकाइयों/मॉड्यूल के बीच इंटरफेस का परीक्षण करना है।

  • एक डिजाइन तैयार करें।
  • ऊपर दी गई सूची से परीक्षण दृष्टिकोण का प्रकार चुनें।
  • तदनुसार परीक्षण मामलों, रूपरेखाओं और लिपियों का चयन करें।
  • चुनी गई इकाइयों को एक साथ परिनियोजित करें और एकीकरण परीक्षण चलाएँ।
  • परीक्षणों के परीक्षण परिणामों को रिकॉर्ड करने के लिए दोषों और बगों को ट्रैक करें।
  • उपरोक्त बिंदुओं को तब तक दोहराएं जब तक कि पूरे सिस्टम का परीक्षण न हो जाए।

प्रक्रिया की प्राथमिकता मॉड्यूल के बीच एकीकृत इंटरफेस लिंक पर होनी चाहिए।

एकीकरण परीक्षण के लिए सर्वोत्तम उपकरण :

वेक्टरकास्ट / सी ++ एक स्वचालित इकाई और एकीकरण परीक्षण समाधान है जिसका उपयोग सुरक्षा और बाजार-महत्वपूर्ण एम्बेडेड सिस्टम को मान्य करने के लिए किया जाता है। इस गतिशील परीक्षण समाधान का व्यापक रूप से एवियोनिक्स, चिकित्सा उपकरण, मोटर वाहन, औद्योगिक नियंत्रण, रेलवे और वित्तीय क्षेत्रों जैसे उद्योगों में उपयोग किया जाता है।

साइट्रस एक ओपन-सोर्स फ्रेमवर्क है जो डेवलपर्स को किसी भी मैसेजिंग प्रोटोकॉल या डेटा प्रारूप के लिए एकीकरण परीक्षण को स्वचालित करने में मदद कर सकता है। साइट्रस आपके एप्लिकेशन के मैसेजिंग इंटीग्रेशन का परीक्षण करने के लिए पसंद का ढांचा है। यदि HTTP, REST, SOAP, या JMS जैसे मैसेजिंग ट्रांसपोर्ट का उपयोग कर रहे हैं।

एलडीआरए डेवलपर्स को मेजबान और लक्ष्य डिवाइस पर यूनिट और एकीकरण परीक्षण करने देता है। एलडीआरए के साथ, डेवलपर्स यूनिट और एकीकरण स्तरों पर मेजबान (स्टैंडअलोन या लक्ष्य सिमुलेशन के साथ) और लक्ष्य हार्डवेयर दोनों पर परीक्षण जल्दी और आसानी से उत्पन्न और निष्पादित कर सकते हैं।

इन दिनों कई व्यवसाय व्यवसाय-उन्मुख वास्तुकला को बढ़ावा दे रहे हैं। पारंपरिक एकीकरण परीक्षण पद्धति, बॉटम-अप दृष्टिकोण की तरह, परीक्षण डेटा बनाने के लिए काफी प्रयासों की आवश्यकता होती है। विप्रो का स्मार्ट इंटीग्रेशन टेस्ट एक्सेलेरेटर (एसआईटीए) डेवलपर्स को इन चुनौतियों से पार पाने में मदद करता है। यह ढांचा डेवलपर्स को टेस्ट डेटा और टेस्ट डिजाइन की पीढ़ी में तेजी लाने की अनुमति देता है।

रैशनल इंटीग्रेशन टेस्टर (RIT) एक इंटीग्रेशन टेस्टिंग टूल है जिसे पहले ग्रीन हैट के नाम से जाना जाता था। आईबीएम ने 2012 में ग्रीन हैट का अधिग्रहण किया। आईबीएम के तर्कसंगत एकीकरण परीक्षक के साथ, डेवलपर्स को एक स्क्रिप्टिंग मुक्त वातावरण मिल सकता है, और एसओए संदेश परीक्षण और एकीकरण परियोजनाओं के लिए विकास संभव है। तर्कसंगत एकीकरण परीक्षक पुनरावृत्त और चुस्त विकास विधियों की सहायता से एकीकरण समस्याओं में बाधा डालता है। यह टूल अब रैशनल टेस्ट वर्कबेंच का हिस्सा है।

एकीकरण परीक्षण के लिए युक्तियाँ :

  • एकीकरण परीक्षण तब तक चलाएं जब तक आपको कम से कम एक दोष न मिल जाए।
  • किसी गलती को अलग करने के बाद, कोड को जोड़कर या संशोधित करके इसे तुरंत हल करें।
  • यूनिट परीक्षण को सही ढंग से करने के बाद ही एकीकरण परीक्षण का अभ्यास करें।
  • लॉग आपकी प्रगति में मदद करता है; डेवलपर्स बेहतर ढंग से विफलता का विश्लेषण करते हैं और विफलता के संभावित कारणों का रिकॉर्ड बनाए रखते हैं।
  • लॉगिंग आपको विफलता का विश्लेषण करने और विफलता के संभावित कारणों का रिकॉर्ड बनाए रखने में मदद करता है, साथ ही वास्तविक कारण को कम करते हुए अन्य स्पष्टीकरणों को खारिज करता है।
  • सुनिश्चित करें कि आपके परीक्षण और विकास परिवेश मेल खाते हैं।
  • मूल्यवान परीक्षण डेटा का उपयोग करें।
  • बग और परीक्षणों के लिए एक सामान्य भंडार का प्रयोग करें।

संबंधित आलेख

इकाई का परीक्षण सिस्टम परीक्षण स्वीकृति परीक्षण