software development
सॉफ्टवेयर विकास और परीक्षण के तरीके क्या हैं?
परीक्षण सॉफ्टवेयर विकास प्रक्रिया का एक अनिवार्य हिस्सा है। एक मजबूत और स्थिर सॉफ्टवेयर उत्पाद को मानक परीक्षण विधियों के उपयोग से वितरित किया जा सकता है जो सॉफ्टवेयर सिस्टम की समय-सीमा का अनुमान लगाने में मदद करेगा।
बड़ी संख्या में प्लेटफार्मों और उपकरणों के साथ एक सॉफ़्टवेयर एप्लिकेशन और भी जटिल हो सकता है। इससे भी महत्वपूर्ण बात, यह सुनिश्चित करना आवश्यक है कि क्या वे निर्दिष्ट आवश्यकताओं को पूरा करते हैं और उन्हें उपयोगकर्ता की मशीन पर कुशलतापूर्वक स्थापित और संचालित किया जा सकता है या नहीं।
के साधनों से सुरक्षा , अनुकूलता , और प्रयोज्य, उचित परीक्षण पद्धति का उपयोग करके एक सॉफ्टवेयर उत्पाद का परीक्षण किया जाना चाहिए।
इस आलेख में , हम परीक्षण के तरीकों से क्या मतलब है, इस पर चर्चा करेंगे कि यह परीक्षण रणनीतियों, और सॉफ्टवेयर परीक्षण विधियों के प्रकारों से अलग कैसे है।
आप क्या सीखेंगे:
- मीनिंग ऑफ टेस्टिंग मेथडोलॉजीज
- परीक्षण तकनीक
- एसडीएलसी में मॉडल
- परीक्षण के तरीके और परीक्षण रणनीतियाँ के बीच अंतर
- निष्कर्ष:
- अनुशंसित पाठ
मीनिंग ऑफ टेस्टिंग मेथडोलॉजीज
कार्यप्रणाली को यूनिट टेस्टिंग से लेकर सिस्टम टेस्टिंग तक सॉफ्टवेयर डेवलपमेंट लाइफसाइकल में उपयोग किए जाने वाले परीक्षण तंत्र के सेट के रूप में माना जा सकता है। एक उपयुक्त परीक्षण पद्धति का चयन करना परीक्षण प्रक्रिया का मूल माना जाता है।
परीक्षण तकनीक
मूल रूप से, 3 परीक्षण विधियां हैं जो परीक्षण के लिए उपयोग की जाती हैं। वे व्हाइट बॉक्स परीक्षण, ब्लैक बॉक्स परीक्षण, और हैं ग्रे बॉक्स परीक्षण । इन्हें भी कहा जाता है परीक्षण तकनीक । परीक्षण तकनीक में से प्रत्येक को आपकी बेहतर समझ के लिए नीचे दिया गया है।
(1) सफेद बॉक्स परीक्षण:
सफेद बॉक्स परीक्षण तकनीक प्रोग्राम संरचना और व्यावसायिक तर्क की जांच करने के लिए उपयोग किया जाता है, यह किसी एप्लिकेशन के कोड या प्रोग्राम को मान्य करता है। इसे भी कहा जाता है स्पष्ट बॉक्स परीक्षण, ग्लास बॉक्स परीक्षण या ओपन बॉक्स परीक्षण ।
सफेद बॉक्स परीक्षण तकनीकों में शामिल हैं:
- स्टेटमेंट कवरेज: सभी प्रोग्रामिंग स्टेटमेंट की जांच करता है।
- शाखा कवरेज: सभी शाखाओं का परीक्षण किया जाता है या नहीं यह सुनिश्चित करने के लिए रनिंग टेस्ट की श्रृंखला।
- पथ कवरेज: प्रत्येक विवरण और शाखा को कवर करने के लिए सभी संभावित रास्तों का परीक्षण करें।
# 2) ब्लैक बॉक्स परीक्षण:
ब्लैक बॉक्स परीक्षण विधि आवश्यकता विनिर्देश के आधार पर किसी एप्लिकेशन की कार्यक्षमता का परीक्षण करने के लिए उपयोग किया जाता है। व्हाइट बॉक्स परीक्षण के विपरीत, यह आंतरिक संरचना / एप्लिकेशन के कोड पर ध्यान केंद्रित नहीं करता है।
ब्लैक बॉक्स तकनीकों में शामिल हैं:
- सीमा मूल्य विश्लेषण
- समतुल्यता विभाजन (समतुल्यता वर्ग विभाजन)
- निर्णय सारणी
- डोमेन टेस्ट
- राज्य मॉडल
- खोजपूर्ण परीक्षण (कम तैयारी की आवश्यकता है और दोषों को जल्दी से खोजने में मदद करता है)।
# 3) ग्रे बॉक्स परीक्षण:
परीक्षण की यह विधि किसी एप्लिकेशन की आंतरिक संरचना के बारे में कम जानकारी के साथ की जाती है। आम तौर पर, यह ब्लैक बॉक्स परीक्षण की तरह ही किया जाता है, लेकिन आवेदन के कुछ महत्वपूर्ण क्षेत्रों के लिए, व्हाइट बॉक्स परीक्षण का उपयोग किया जाता है।
एसडीएलसी में मॉडल
उचित परीक्षण पद्धति का चयन करना एसडीएलसी में एक उचित मॉडल चुनने के साथ भी शामिल है।
मॉडल में शामिल हैं:
- झरना मॉडल
- मॉडल में
- फुर्तीला मॉडल
- सर्पिल मॉडल
- रेड
आइए संक्षिप्त विवरण के साथ प्रत्येक सॉफ़्टवेयर डेवलपमेंट मेथडॉलॉजी पर करीब से नज़र डालें।
(1) झरना मॉडल
झरना मॉडल मूल जीवन चक्र मॉडल है जिसे 1970 में विंस्टन रॉयस द्वारा विकसित किया गया था। यह मॉडल क्रमिक तरीके से कई चरणों या प्रक्रियाओं का प्रतिनिधित्व करता है जो उत्तरोत्तर नीचे की ओर बहता है।
यह दृष्टिकोण उपयोगी है जब आवश्यकताओं को अच्छी तरह से जाना जाता है, प्रौद्योगिकी को समझा जाता है और आवश्यक विशेषज्ञता वाले संसाधन उपलब्ध हैं।
झरना मॉडल निम्नलिखित चरणों द्वारा परिभाषित किया गया है:
- आवश्यकता एकत्रीकरण और विश्लेषण: सभी आवश्यकताओं को कैप्चर करें और उनका विश्लेषण करें और सुनिश्चित करें कि वे परीक्षण योग्य हैं या नहीं।
- प्रणाली की रूपरेखा: आवश्यकता विश्लेषण के आधार पर डिज़ाइन और दस्तावेज़ बनाएँ। हार्डवेयर और सॉफ्टवेयर आवश्यकताओं को परिभाषित करें।
- कार्यान्वयन: डिजाइन के अनुसार घटकों के लिए मजबूत कोड बनाएं और उन्हें एकीकृत करें।
- सिस्टम परीक्षण: एकीकृत घटक एक पूरी प्रणाली बनाते हैं, यह चरण यह सुनिश्चित करने के लिए किया जाता है कि क्या प्रणाली आवश्यकताओं के अनुसार काम कर रही है, परीक्षण प्रगति को ट्रैक और रिपोर्ट कर रही है।
- सिस्टम परिनियोजन: सुनिश्चित करें कि यदि सिस्टम शून्य बग के साथ स्थिर है, तो सभी परीक्षण मानदंड थे
मुलाकात, पर्यावरण सेटअप आदि सुनिश्चित करना। - प्रणाली रखरखाव: यह सुनिश्चित करता है कि आवेदन उपयुक्त वातावरण के साथ आवश्यकता के अनुसार कुशलता से काम कर रहा है या नहीं। यदि कोई दोष पाया जाता है, तो उसे ठीक किया जाना चाहिए और पर्यावरण में तैनात (अद्यतन) होना चाहिए।
झरना मॉडल के लाभ:
- सरल और समझने में आसान।
- प्रत्येक चरण के रूप में प्रबंधित करने में आसान के अपने विशिष्ट डिलिवरेबल्स हैं।
- चरणों के अतिव्यापी से बचा जाता है।
- छोटी परियोजनाओं के लिए अच्छा है।
झरना मॉडल के नुकसान:
- जोखिम और अनिश्चितता की मात्रा में वृद्धि।
- एक बार परीक्षण चरण में प्रवेश करने के बाद, पिछले चरणों में कुछ भी नहीं बदल सकता है उदाहरण के लिए: डिजाइन और कोडिंग आदि।
- जटिल और बड़ी परियोजनाओं के लिए अच्छा नहीं है।
- उपयुक्त नहीं है जहाँ आवश्यकताएँ बदलती रहें।
# 2) मॉडल में
वी मॉडल है एक जलप्रपात मॉडल का विस्तार जहां वी-शेप में प्रक्रिया निष्पादन एक अनुक्रमिक शैली में होता है और इसे सत्यापन और सत्यापन मॉडल के रूप में भी जाना जाता है। इस दृष्टिकोण में, विकास चक्र के हर एक चरण में सीधे जुड़े परीक्षण चरण मौजूद हैं।
यह झरने के मॉडल की तुलना में लाभदायक और लागत-कुशल साबित हुआ है क्योंकि विकास चक्र के अंत में प्रत्येक विकास चरण में परीक्षण किया जाता है।
V मॉडल को 3 चरणों में वर्गीकृत किया गया है।
- सत्यापन का चरण
- कोडिंग चरण
- मान्यता चरण
क) सत्यापन चरण :
- व्यावसायिक आवश्यकता विश्लेषण: उनकी उम्मीदों और आवश्यकताओं को समझने के लिए ग्राहक के साथ संवाद करें।
- प्रणाली की रूपरेखा: डिज़ाइनपूर्णसिस्टम और इसके घटक हार्डवेयर और सॉफ्टवेयर आवश्यकताओं के साथ।
- वास्तुशिल्प डिजाइन: इस चरण में वास्तुकला संबंधी विशिष्टताओं पर कब्जा कर लिया गया है। इसे उच्च-स्तरीय डिज़ाइन के रूप में भी जाना जाता है।
- मॉड्यूल डिजाइन: इसे निम्न-स्तरीय डिज़ाइन, सभी निर्दिष्ट सिस्टम मॉड्यूल के लिए विस्तृत आंतरिक डिज़ाइन के रूप में भी जाना जाता है।
बी) कोडिंग चरण:
इस चरण में विकास जीवनचक्र में वास्तविक कोडिंग चरण होता है। प्रोग्रामिंग भाषाओं को पिछले चरण प्रौद्योगिकी मंच में निर्दिष्ट प्रणाली और वास्तुशिल्प डिजाइन के आधार पर चुना जाना चाहिए। पूर्व-परिभाषित मानकों और दिशानिर्देशों के अनुसार कोडिंग की जाती है।
ग) मान्यता चरण :
- इकाई का परीक्षण: प्रारंभिक चरण में बग को खत्म करने के लिए एक व्यक्तिगत मॉड्यूल पर प्रदर्शन किया गया।
- एकीकरण जांच: सिस्टम में विभिन्न मॉड्यूल के बीच संचार का परीक्षण करने के लिए प्रदर्शन किया।
- सिस्टम परीक्षण: सिस्टम परीक्षण एक पूरे के रूप में एक सिस्टम पर किया जाता है।
- स्वीकृति परीक्षण: यह व्यावसायिक आवश्यकताओं के साथ जुड़ा हुआ है। यह उपयोगकर्ता के दृष्टिकोण से उपयोगकर्ता के वातावरण में किया जाता है।
V मॉडल के लाभ
- सरल, प्रयोग करने में आसान और समझने में आसान।
- ओवरलैपिंग से बचा जाता है क्योंकि चरणों को एक बार में निष्पादित किया जाता है।
- छोटे प्रोजेक्ट्स के लिए प्रबंधन करना आसान और उपयुक्त।
V मॉडल के नुकसान वाटरफॉल मॉडल के नुकसान के समान हैं।
# 3) फुर्तीली मॉडल
फुर्तीली मॉडल एक पुनरावृत्त और वृद्धिशील दृष्टिकोण दिखाता है। यह दृष्टिकोण उत्पाद को पुनरावृत्तियों प्रदान करने के लिए छोटी वृद्धिशील इकाइयों में तोड़ता है। फिर प्रत्येक पुनरावृत्ति में योजना, आवश्यकता विश्लेषण, डिजाइन, कोडिंग, इकाई परीक्षण, स्वीकृति परीक्षण आदि जैसे कदम शामिल हैं।
यह दृष्टिकोण ग्राहक के साथ उनकी प्रतिक्रिया और नियमित अंतराल पर आवश्यकताओं में सुधार के लिए निरंतर बातचीत की भी अनुमति देता है।
निम्नलिखित आरेख आपको अधिक सटीक रूप से चंचल मॉडल दृष्टिकोण को समझने में मदद करेगा:
निम्नलिखित छवि फुर्तीली मॉडल में पुनरावृत्ति चक्र दिखाएगी:
फुर्तीली मॉडल के लाभ:
- सॉफ्टवेयर विकास के लिए एक यथार्थवादी दृष्टिकोण।
- टीम वर्क को बढ़ावा देता है।
- आवश्यकताओं और परीक्षण मामलों के बीच बेमेल को खत्म करता है।
- तीव्र और न्यूनतम संसाधनों की आवश्यकता होती है।
- बड़ी और लंबी अवधि की परियोजनाओं के लिए उपयुक्त।
- बदलती आवश्यकताओं के लिए अच्छा है।
- प्रबंधन में आसान।
चंचल मॉडल के नुकसान:
- जटिल परियोजनाओं के लिए उपयुक्त नहीं है।
- ग्राहक के साथ भारी मात्रा में इंटरैक्शन की आवश्यकता होती है जो देरी का कारण हो सकता है।
- आवश्यकताओं का दुरुपयोग सॉफ्टवेयर उत्पाद के गलत विकास का कारण हो सकता है।
- स्थिरता बनाए रखने का जोखिम बढ़ा।
- दूसरी टीम को सौंपना काफी चुनौतीपूर्ण हो सकता है।
# 4) सर्पिल मॉडल
सर्पिल मॉडल जलप्रपात मॉडल के व्यवस्थित दृष्टिकोण के साथ-साथ पुनरावृत्त विकास दृष्टिकोण को शामिल करता है। यह वृद्धिशील मॉडल और जोखिम विश्लेषण पर जोर देने के समान है।
सर्पिल मॉडल के चार चरण हैं:
- योजना चरण
- संकट विश्लेषण
- इंजीनियरिंग चरण
- मूल्यांकन चरण
1) योजना चरण: इस चरण में, आवश्यकताओं को इकट्ठा किया जाता है और परीक्षण के मामले को अंतिम रूप देने के लिए समीक्षा की जाती है।
2) जोखिम विश्लेषण: इस चरण में प्रबंधन जोखिमों की पहचान, निगरानी और आकलन शामिल है। बुद्धिशीलता, वॉकथ्रू आदि तकनीकों का उपयोग करके जोखिमों की पहचान करने के लिए आवश्यकताओं का विश्लेषण किया जाता है।
3) इंजीनियरिंग चरण: इस चरण में, सॉफ़्टवेयर को अंत में विकसित और परीक्षण किया जाता है।
4) मूल्यांकन चरण: यह अंतिम चरण है जहां एक ग्राहक एक परियोजना के उत्पादन का मूल्यांकन करता है और अगले सर्पिल या अनुमोदन के लिए अपनी प्रतिक्रिया देता है।
सर्पिल मॉडल का सचित्र प्रतिनिधित्व:
सर्पिल मॉडल का उपयोग कब करें:
- उच्च जोखिम वाली परियोजनाओं के लिए।
- जब आवश्यकताएं जटिल होती हैं।
- अगर कोई प्रोजेक्ट बड़ा है।
- अगले सर्पिल के लिए उपयोगकर्ता की प्रतिक्रिया प्राप्त करने के लिए पर्याप्त मात्रा में समय रखें।
- अनुसंधान और अन्वेषण के कारण महत्वपूर्ण बदलाव की आवश्यकता है।
- उपयोगकर्ता उनकी जरूरतों के बारे में सुनिश्चित नहीं हैं।
सर्पिल मॉडल के लाभ:
- जोखिम से बचाव क्योंकि इसमें जोखिम विश्लेषण की एक उच्च मात्रा शामिल है।
- त्वरित विकास।
- आवश्यकताओं में परिवर्तन आसानी से समायोजित किया जाता है।
- आवश्यकताओं को अधिक सटीक रूप से प्राप्त किया जा सकता है।
सर्पिल मॉडल के नुकसान:
- जटिल प्रबंधन।
- छोटी परियोजनाओं के लिए उपयुक्त नहीं है।
- शामिल नहीं हो सकता है। सर्पिल की (अनिश्चित)।
- महंगा है।
- अपनी परियोजना की सफलता के लिए उच्च मात्रा में जोखिम विश्लेषण और विशेषज्ञता की आवश्यकता होती है।
# 5) RAD मॉडल
रैपिड एप्लीकेशन डेवलपमेंट (आरएडी) वृद्धिशील मॉडल का एक प्रकार है। इस दृष्टिकोण में, घटकों को समानांतर में विकसित किया जाता है।
यह एक तेज़ तरीका है और यह ग्राहक को प्रतिक्रिया देने के लिए एक तेज़ उत्पाद दे सकता है।
राड में चरण इस प्रकार हैं:
- बिजनेस मॉडलिंग: विभिन्न व्यावसायिक चैनलों के बीच महत्वपूर्ण जानकारी और उसके प्रवाह की पहचान करता है।
- मॉडलिंग की दिनांक: पिछले चरण में एकत्रित जानकारी का उपयोग व्यवसाय के लिए आवश्यक डेटा ऑब्जेक्ट को परिभाषित करने के लिए किया जाता है।
- प्रक्रिया मॉडलिंग: डेटा ऑब्जेक्ट्स को व्यावसायिक उद्देश्य और सूचना के प्रवाह को प्राप्त करने के लिए परिवर्तित किया जाता है।
- आवेदन पीढ़ी: इस चरण में, प्रक्रिया मॉडल को वास्तविक कोड में बदलने के लिए स्वचालन उपकरण का उपयोग किया जाता है।
- परीक्षण और कारोबार: एक प्रणाली के सभी घटकों का परीक्षण करता है, इसलिए समग्र परीक्षण का समय कम हो जाता है।
राड मॉडल के लाभ:
- प्रगति को मापा जा सकता है।
- विकास के समय को कम करता है।
- पुन: प्रयोज्यता में वृद्धि।
- प्रारंभिक प्रारंभिक समीक्षाएँ।
- ग्राहक प्रतिक्रिया बढ़ाता है।
राड मॉडल के नुकसान:
- उच्च कुशल संसाधनों की आवश्यकता है।
- उच्च लागत का अनुमान।
- सस्ती परियोजनाओं के लिए लागू नहीं।
- मॉडलिंग कौशल पर उच्च निर्भरता।
- RAD का उपयोग करके केवल एक मॉड्यूलर सिस्टम बनाया जा सकता है।
परीक्षण के तरीके और परीक्षण रणनीतियाँ के बीच अंतर
इसका उत्तर ज्यादा जटिल नहीं है क्योंकि दोनों में एक साधारण अंतर है।
परीक्षण के तरीके परीक्षण के तरीके या दृष्टिकोण हैं जो सिस्टम परीक्षण के माध्यम से यूनिट परीक्षण से शामिल हैं।
परीक्षण रणनीतियाँ मुख्य मुद्दों का अवलोकन है जो परीक्षण प्रक्रिया में होता है और इसे परियोजना प्रबंधक, डेवलपर्स और परीक्षकों की एक टीम द्वारा ध्यान में रखा जाता है।
उपरोक्त चर्चा की गई सॉफ्टवेयर टेस्टिंग मेथड्स को लागू करने के लिए उपयोग किया जाता है एन परीक्षण रणनीतियों की संख्या।
उनमें से कुछ नीचे सूचीबद्ध हैं:
1) यूनिट परीक्षण:
- बहुत छोटी कार्यात्मक इकाइयों पर ध्यान केंद्रित करता है।
- अलगाव के लिए सबसे छोटी इकाइयों की जांच करने का सबसे सरल तरीका।
- आमतौर पर डेवलपर्स द्वारा प्रदर्शन किया जाता है।
2) एकीकरण परीक्षण:
सबसे अच्छा youtube वीडियो कनवर्टर क्या है
- यह डेवलपर की ओर से किया जाने वाला अगला चरण है।
- सॉफ्टवेयर के विभिन्न मॉड्यूल के बीच बातचीत, अंतर-संचालन और संचार का परीक्षण करने के लिए तंत्र प्रदान करें
3) कार्यात्मक परीक्षण:
इसका उपयोग किसी सॉफ्टवेयर सिस्टम की कार्यप्रणाली की जाँच करने के लिए किया जाता है अर्थात् आउटपुट दिए गए इनपुट पर।
4) प्रतिगमन परीक्षण:
जाँचता है कि क्या बग फिक्सिंग एक जगह पर हुई है ताकि जटिल कार्यक्षमता किसी अन्य कोर क्षेत्र में किसी भी परिवर्तन का कारण न बनें।
5) प्रणाली परीक्षण:
- एक सामूहिक प्रणाली के रूप में सभी एकीकृत मॉड्यूल का परीक्षण।
- कई विशेषताओं को एंड-टू-एंड परिदृश्यों में जोड़ता है।
6) प्रदर्शन परीक्षण:
महत्वपूर्ण स्थितियों में एप्लिकेशन के प्रदर्शन का परीक्षण करता है जैसे कि बड़े आकार की फ़ाइल को स्थानांतरित करना, समवर्ती उपयोगकर्ताओं को सिस्टम तक पहुंच, कॉन्फ़िगरेशन विफलता आदि।
7) स्वीकृति परीक्षण :
- आम तौर पर परीक्षण का अंतिम स्तर जहां सॉफ्टवेयर उत्पाद को परीक्षकों द्वारा उपयोगकर्ताओं के दृष्टिकोण के रूप में जांचा जाता है
- इस चरण का परिणाम व्यक्तिपरक है और सटीक मुद्दा खोजने में थोड़ा सा लगता है
निष्कर्ष:
एक उचित परीक्षण कार्यप्रणाली चुनना क्रिया या क्रियाओं का समूह है जो परीक्षण प्रक्रिया के मूल में निहित है। यह एक बहुमुखी गतिविधि भी हो सकती है जो सॉफ्टवेयर उत्पाद की व्यावसायिक आवश्यकताओं और समय के अनुसार बदलती है।
हालाँकि, कोई एक या अधिक सॉफ्टवेयर डेवलपमेंट और टेस्टिंग मेथडॉलॉजी का चयन कर सकता है, जिसमें अधिक लचीले और कुशल एंड प्रोडक्ट हों, जो ग्राहक की जरूरतों और अपेक्षाओं को संतुष्ट करता हो।
अपने विचार / सुझाव हमें नीचे कमेंट सेक्शन में दें।
अनुशंसित पाठ
- सर्वश्रेष्ठ सॉफ्टवेयर परीक्षण उपकरण 2021 (क्यूए टेस्ट स्वचालन उपकरण)
- सॉफ्टवेयर परीक्षण क्यूए सहायक नौकरी
- सॉफ्टवेयर टेस्टिंग कोर्स: मुझे किस सॉफ्टवेयर टेस्टिंग इंस्टीट्यूट में शामिल होना चाहिए?
- अपने कैरियर के रूप में सॉफ्टवेयर परीक्षण चुनना
- सॉफ्टवेयर टेस्टिंग टेक्निकल कंटेंट राइटर फ्रीलांसर जॉब
- कुछ दिलचस्प सॉफ्टवेयर परीक्षण साक्षात्कार प्रश्न
- सॉफ्टवेयर परीक्षण पाठ्यक्रम प्रतिक्रिया और समीक्षा
- सॉफ्टवेयर परीक्षण मदद संबद्ध कार्यक्रम!