- युनिट टेस्टिंग विरुद्ध इंटिग्रेशन टेस्टिंग विरुद्ध फंक्शनल टेस्टिंग
- युनिट टेस्टिंग म्हणजे काय?
- इंटिग्रेशन टेस्टिंग म्हणजे काय ?
- युनिट टेस्टिंग वि इंटिग्रेशन टेस्टिंग
- कार्यात्मक चाचणी
- निष्कर्ष
- शिफारस केलेले वाचन
युनिट, इंटिग्रेशन आणि फंक्शनल टेस्टिंगची तपशीलवार तुलना:
कोणत्याही सॉफ्टवेअर अॅप्लिकेशनसाठी, युनिट टेस्टिंग, तसेच इंटिग्रेशन टेस्टिंग या दोन्ही अतिशय महत्त्वाच्या आहेत कारण त्या प्रत्येकामध्ये एक सॉफ्टवेअर ऍप्लिकेशनची चाचणी घेण्यासाठी अनन्य प्रक्रिया.
परंतु कोणतेही एक किंवा दोन्ही कोणत्याही वेळी कार्यात्मक चाचणी बदलू शकत नाहीत.
युनिट टेस्टिंग विरुद्ध इंटिग्रेशन टेस्टिंग विरुद्ध फंक्शनल टेस्टिंग
युनिट टेस्टिंग म्हणजे एका ऍप्लिकेशनच्या स्वतंत्र मॉड्यूल्सची अलगावमध्ये चाचणी करणे (अवलंबनांशी कोणत्याही परस्परसंवादाशिवाय) कोड गोष्टी बरोबर करत असल्याची पुष्टी करा.
एकत्रीकरण चाचणी म्हणजे गट म्हणून एकत्रित केल्यावर वेगवेगळे मॉड्यूल चांगले काम करत आहेत का ते तपासणे.
कार्यात्मक चाचणी म्हणजे कोड योग्य गोष्टी करत आहे याची पुष्टी करण्यासाठी सिस्टममधील कार्यक्षमतेचा एक तुकडा (अवलंबनांशी संवाद साधू शकतो) चाचणी करणे.
कार्यात्मक चाचण्या एकत्रीकरण चाचण्यांशी संबंधित आहेत, तथापि, त्या चाचण्यांना सूचित करतात की सर्व कोड एकत्रितपणे चालत असलेल्या संपूर्ण ऍप्लिकेशनची कार्यक्षमता तपासा, जवळजवळ एक सुपर इंटिग्रेशन चाचणी.
युनिट चाचणी प्रणालीचा एक घटक तपासण्याचा विचार करते तर कार्यक्षमता चाचणी हेतूच्या विरूद्ध अनुप्रयोगाचे कार्य तपासण्याचा विचार करते सिस्टम आवश्यकता तपशीलामध्ये वर्णन केलेली कार्यक्षमता. दुसरीकडे, एकत्रीकरण चाचणी तपासणीचा विचार करतेसिस्टममध्ये समाकलित मॉड्यूल.
आणि, सर्वात महत्त्वाचे म्हणजे, गुंतवणुकीवर परतावा (ROI) ऑप्टिमाइझ करण्यासाठी, तुमच्या कोड बेसमध्ये शक्य तितक्या युनिट चाचण्या, कमी एकत्रीकरण चाचण्या आणि कमीत कमी कार्यात्मक चाचण्या असाव्यात.
हे खालील चाचणी पिरॅमिडमध्ये उत्तम प्रकारे स्पष्ट केले आहे:
युनिट चाचण्या लिहिणे सोपे आणि कार्यान्वित करणे अधिक जलद आहे. वरील पिरॅमिडमध्ये दर्शविल्याप्रमाणे चाचण्यांची अंमलबजावणी आणि देखरेख करण्यासाठी लागणारा वेळ आणि मेहनत युनिट चाचणीपासून कार्यात्मक चाचणीपर्यंत वाढते.
उदाहरण:
या तीन प्रकारच्या चाचण्या एका अतिसरल उदाहरणासह समजून घेऊया.
उदा. . कार्यक्षम मोबाइल फोनसाठी, "बॅटरी" आणि "सिम कार्ड" आवश्यक असलेले मुख्य भाग आहेत.
युनिट चाचणीचे उदाहरण - बॅटरीचे आयुष्य, क्षमता आणि इतर पॅरामीटर्स तपासले जातात. सिम कार्ड त्याच्या सक्रियतेसाठी तपासले जाते.
एकीकरण चाचणीचे उदाहरण – बॅटरी आणि सिम कार्ड एकत्रित केले जातात म्हणजेच मोबाइल फोन सुरू करण्यासाठी एकत्र केले जातात.
कार्यरत चाचणीचे उदाहरण – मोबाईल फोनची कार्यक्षमता त्याची वैशिष्ट्ये आणि बॅटरी वापर तसेच सिम कार्ड सुविधांनुसार तपासली जाते.
आम्ही एक उदाहरण पाहिले आहे सामान्य माणसाच्या अटी.
आता, आता लॉगिन पेजचे तांत्रिक उदाहरण घेऊ:
जवळजवळ प्रत्येक वेब अॅप्लिकेशनला त्याची आवश्यकता असते लॉग इन करण्यासाठी वापरकर्ते/ग्राहक. त्यासाठी, प्रत्येक अर्जाला हे करावे लागेलएक “लॉगिन” पृष्ठ आहे ज्यामध्ये हे घटक आहेत:
- खाते/वापरकर्तानाव
- पासवर्ड
- लॉग इन/साइन इन बटण
युनिट चाचणीसाठी, खालील चाचणी प्रकरणे असू शकतात:
- फील्ड लांबी – वापरकर्तानाव आणि पासवर्ड फील्ड.
- इनपुट फील्ड मूल्ये वैध असावीत.14
- दोन्ही फील्डमध्ये वैध मूल्ये (स्वरूप आणि लांबीनुसार) प्रविष्ट केल्यानंतरच लॉगिन बटण सक्षम केले जाते.
एकीकरण चाचणीसाठी, खालील चाचणी प्रकरणे असू शकतात:
- वापरकर्त्याला वैध मूल्ये प्रविष्ट केल्यानंतर आणि लॉगिन बटण दाबल्यानंतर स्वागत संदेश दिसतो.
- वापरकर्त्याने वैध प्रविष्टी आणि क्लिक केल्यानंतर स्वागत पृष्ठ किंवा मुख्यपृष्ठावर नेव्हिगेट केले पाहिजे लॉगिन बटण.
आता, युनिट आणि एकत्रीकरण चाचणी पूर्ण झाल्यानंतर, कार्यात्मक चाचणीसाठी विचारात घेतलेल्या अतिरिक्त चाचणी प्रकरणे पाहू:
- अपेक्षित वर्तन तपासले आहे, म्हणजे वापरकर्ता वैध वापरकर्तानाव आणि संकेतशब्द मूल्ये प्रविष्ट केल्यानंतर लॉगिन बटणावर क्लिक करून लॉग इन करण्यास सक्षम आहे.
- यशस्वी लॉगिननंतर दिसण्यासाठी एक स्वागत संदेश आहे का?
- अवैध लॉगिनवर दिसावा असा एरर मेसेज आहे का?
- लॉगिन फील्डसाठी काही स्टोअर केलेल्या साइट कुकीज आहेत का?
- निष्क्रिय वापरकर्ता लॉग इन करू शकतो का?14
- जे वापरकर्ते त्यांचे पासवर्ड विसरले आहेत त्यांच्यासाठी काही 'पासवर्ड विसरला' लिंक आहे का?
अशा अनेक प्रकरणे समोर येतात.फंक्शनल टेस्टिंग करताना फंक्शनल टेस्टरचे मन. परंतु युनिट आणि इंटिग्रेशन चाचणी प्रकरणे तयार करताना विकसक सर्व केसेस घेऊ शकत नाही.
अशा प्रकारे, युनिट आणि इंटिग्रेशन चाचणीनंतरही अनेक परिस्थिती तपासल्या गेल्या आहेत.
आता युनिट, इंटिग्रेशन आणि फंक्शनल टेस्टिंगची एक-एक करून तपासणी करण्याची वेळ आली आहे.
युनिट टेस्टिंग म्हणजे काय?
नावाप्रमाणे, या स्तरामध्ये 'युनिट' चाचणी करणे समाविष्ट आहे.
येथे युनिट चाचणी करण्यायोग्य अनुप्रयोगाचा सर्वात लहान भाग असू शकतो, मग ते सर्वात लहान वैयक्तिक कार्य, पद्धत इ. सॉफ्टवेअर डेव्हलपर हे युनिट चाचणी प्रकरणे लिहितात. गरजा आणि युनिटच्या अपेक्षित वर्तनाशी जुळणे हे येथे उद्दिष्ट आहे.
युनिट चाचणी आणि त्याचे फायदे याबद्दल काही महत्त्वाचे मुद्दे खाली दिले आहेत:
- युनिट चाचणी व्हाईट बॉक्स टेस्टिंग तंत्र वापरून सॉफ्टवेअर डेव्हलपर्सद्वारे इंटिग्रेशन टेस्टिंगपूर्वी केले जाते.
- युनिट टेस्टिंग केवळ सकारात्मक वर्तन तपासत नाही. वैध इनपुटच्या बाबतीत योग्य आउटपुट, परंतु अवैध इनपुटसह होणारे अपयश देखील तपासते.
- सुरुवातीच्या टप्प्यावर समस्या/बग शोधणे खूप उपयुक्त आहे आणि यामुळे एकूण प्रकल्प खर्च कमी होतो. कोडच्या एकत्रीकरणापूर्वी युनिट चाचणी केली जात असल्याने, या टप्प्यावर आढळलेल्या समस्यांचे निराकरण अगदी सहजपणे केले जाऊ शकते आणि त्यांचा प्रभाव देखील खूप कमी आहे.
- एक युनिट चाचणी कोडच्या लहान तुकड्या किंवा वैयक्तिक चाचणी करतेफंक्शन्स म्हणून या चाचणी प्रकरणांमध्ये आढळलेल्या समस्या/त्रुटी स्वतंत्र आहेत आणि इतर चाचणी प्रकरणांवर परिणाम करत नाहीत.
- दुसरा महत्त्वाचा फायदा म्हणजे युनिट चाचणी प्रकरणे सरलीकृत करतात आणि कोडची चाचणी सुलभ करतात. त्यामुळे, नंतरच्या टप्प्यावर समस्यांचे निराकरण करणे सोपे होते कारण कोडमधील फक्त नवीनतम बदलाचीच चाचणी करायची आहे.
- युनिट चाचणी वेळ आणि खर्च वाचवते आणि ते पुन्हा वापरता येण्यासारखे आणि देखरेख करणे सोपे आहे.
JUnit (Java फ्रेमवर्क), PHPUnit (PHP फ्रेमवर्क), NUnit (.Net फ्रेमवर्क) इत्यादी लोकप्रिय युनिट चाचणी साधने आहेत जी वेगवेगळ्या भाषांसाठी वापरली जातात.
इंटिग्रेशन टेस्टिंग म्हणजे काय ?
एकत्रीकरण चाचणी म्हणजे सिस्टीमच्या वेगवेगळ्या भागांच्या एकत्रीकरणाची चाचणी. सिस्टमचे दोन वेगवेगळे भाग किंवा मॉड्यूल प्रथम एकत्रित केले जातात आणि नंतर एकत्रीकरण चाचणी केली जाते.
एकीकरण चाचणीचे उद्दीष्ट कार्यक्षमता, विश्वसनीयता आणि कार्यप्रदर्शन तपासणे आहे. सिस्टम इंटिग्रेटेड केल्यावर.
एकत्रीकरण चाचणी प्रथम युनिट चाचणी केलेल्या मॉड्यूल्सवर केली जाते आणि नंतर एकत्रीकरण चाचणी हे परिभाषित करते की मॉड्यूल्सचे संयोजन इच्छित आउटपुट देते की नाही.
एकीकरण चाचणी एकतर करू शकते स्वतंत्र परीक्षकांद्वारे किंवा विकसकांद्वारे देखील केले जाऊ शकते.
एकीकरण चाचणीचे 3 भिन्न प्रकार आहेत. चला त्या प्रत्येकाची थोडक्यात चर्चा करूया:
अ) बिग बँग इंटिग्रेशन अॅप्रोच
या पध्दतीमध्ये, सर्व मॉड्यूल्स किंवा युनिट्स एकाच वेळी एकत्रित आणि संपूर्णपणे तपासल्या जातात. हे सहसा संपूर्ण सिस्टीम एका बिंदूवर एकत्रीकरण चाचणीसाठी तयार असते तेव्हा केले जाते.
कृपया एकत्रीकरण चाचणीचा हा दृष्टीकोन सिस्टीम चाचणीसह गोंधळात टाकू नका, फक्त मॉड्यूल्स किंवा युनिट्सच्या एकत्रीकरणाची चाचणी केली जाते आणि नाही संपूर्ण प्रणाली जशी ती सिस्टीम चाचणीमध्ये केली जाते.
बिग बँग दृष्टिकोनाचा प्रमुख फायदा म्हणजे एकात्मिक प्रत्येक गोष्टीची एकाच वेळी चाचणी केली जाते.
एक प्रमुख तोटा म्हणजे अपयश ओळखणे कठीण होते.
उदाहरण: खालील आकृतीमध्ये, युनिट 1 ते युनिट 6 एकात्मिक आणि बिग बँग दृष्टिकोन वापरून तपासले जातात.
b) टॉप-डाउन अॅप्रोच
युनिट्स/मॉड्यूलच्या एकत्रीकरणाची चाचणी वरपासून खालपर्यंत टप्प्याटप्प्याने केली जाते.
द पहिल्या युनिटची चाचणी STUBS लिहून वैयक्तिकरित्या केली जाते. यानंतर, शेवटचे स्तर एकत्र येईपर्यंत आणि चाचणी होईपर्यंत खालचे स्तर एकामागून एक समाकलित केले जातात.
टॉप-डाउन दृष्टीकोन हा एकात्मिक करण्याचा एक अतिशय सेंद्रिय मार्ग आहे कारण तो गोष्टी वास्तविकतेत कशा घडतात याच्याशी सुसंगत आहे. पर्यावरण.
या दृष्टीकोनासह फक्त चिंता म्हणजे प्रमुख कार्यक्षमतेची शेवटी चाचणी केली जाते.
c) तळाशी- अप अॅप्रोच
युनिट/मॉड्युलचे सर्व स्तर एकत्र येईपर्यंत तळापासून वरच्या स्तरापर्यंत, टप्प्याटप्प्याने चाचणी केली जाते.आणि एक युनिट म्हणून चाचणी केली. या पद्धतीमध्ये ड्राइव्हर्स नावाचे उत्तेजक कार्यक्रम वापरले जातात. खालच्या स्तरावर समस्या किंवा त्रुटी शोधणे सोपे आहे.
या दृष्टिकोनाचा प्रमुख तोटा म्हणजे उच्च-स्तरीय समस्या केवळ तेव्हाच ओळखल्या जाऊ शकतात जेव्हा सर्व युनिट्स समाकलित केले आहे.
युनिट टेस्टिंग वि इंटिग्रेशन टेस्टिंग
युनिट टेस्टिंग आणि इंटिग्रेशन टेस्टिंगबद्दल पुरेशी चर्चा केल्यावर, या दोन्हीमधील फरक त्वरीत पाहू या खालील तक्त्यामध्ये:
युनिट चाचणी | एकत्रीकरण चाचणी |
---|---|
संपूर्ण प्रणालीच्या एकाच घटकाची चाचणी करते उदा. एका युनिटची अलगावमध्ये चाचणी करते. | एकत्र काम करणार्या सिस्टीम घटकांची चाचणी करते म्हणजेच एकाधिक युनिट्सच्या सहयोगाची चाचणी घेते. |
अंमलबजावणीसाठी जलद | चालू शकते मंद |
बाह्य अवलंबित्व नाही. कोणत्याही बाह्य अवलंबित्वाची थट्टा केली जाते किंवा ती बाहेर काढली जाते. | बाह्य अवलंबनांसह परस्परसंवाद आवश्यक आहे (उदा. डेटाबेस, हार्डवेअर इ.) |
साधे | जटिल |
डेव्हलपरद्वारे आयोजित | परीक्षकाद्वारे आयोजित |
हे व्हाईट बॉक्स चाचणीचा एक प्रकार आहे | ते ब्लॅक बॉक्स चाचणीचा एक प्रकार आहे |
चाचणीच्या सुरुवातीच्या टप्प्यावर केला जातो आणि नंतर कधीही केला जाऊ शकतो | युनिट चाचणीनंतर आणि सिस्टम चाचणीपूर्वी केला जाणे आवश्यक आहे |
स्वस्तदेखभाल | महाग देखभाल |
मॉड्यूल तपशीलापासून सुरू होते | इंटरफेस तपशीलापासून सुरू होते |
युनिट चाचणीला एक संकुचित वाव आहे कारण ते फक्त कोडचा प्रत्येक छोटा तुकडा जे करायचे आहे ते करत आहे की नाही हे तपासते. | त्याला विस्तृत व्याप्ती आहे कारण ती संपूर्ण अनुप्रयोग कव्हर करते |
युनिट चाचणीचा परिणाम कोडची तपशीलवार दृश्यमानता आहे | एकीकरणाचा परिणाम चाचणी ही इंटिग्रेशन स्ट्रक्चरची तपशीलवार दृश्यमानता आहे |
केवळ वैयक्तिक मॉड्यूल्सच्या कार्यक्षमतेमधील समस्या उघड करा. एकत्रीकरण त्रुटी किंवा सिस्टम-व्यापी समस्या उघड करत नाही. | एकूण प्रणाली तयार करण्यासाठी भिन्न मॉड्यूल एकमेकांशी संवाद साधतात तेव्हा उद्भवणारे बग उघड करा |
कार्यात्मक चाचणी
ब्लॅक बॉक्स चाचणी तंत्र, जेथे विशिष्ट इनपुट प्रदान करताना इच्छित आउटपुट व्युत्पन्न करण्यासाठी अनुप्रयोगाच्या कार्यक्षमतेची चाचणी केली जाते त्याला 'कार्यात्मक चाचणी' म्हणतात.
आमच्या सॉफ्टवेअर चाचणी प्रक्रियेमध्ये, आम्ही आवश्यकता आणि परिस्थितींनुसार चाचणी प्रकरणे लिहून हे करा. कोणत्याही कार्यक्षमतेसाठी, लिहिलेल्या चाचणी प्रकरणांची संख्या एक ते अनेक बदलू शकते.
निष्कर्ष
हे तीनही चाचणी प्रकार परस्परसंबंधित आहेत.
संपूर्ण कव्हरेज प्राप्त करण्यासाठी, ते कोडच्या पथ/रेषांसाठी युनिट चाचण्या, फंक्शनल आणि इंटिग्रेशन चाचण्या या खात्रीसाठी आवश्यक आहेत की 'युनिट्स'एकत्रितपणे एकत्र काम करा.
आशा आहे की या लेखामुळे तुम्हाला युनिट, इंटिग्रेशन आणि फंक्शनल चाचण्यांबद्दल त्यांच्यातील फरकांसह स्पष्ट कल्पना मिळाली असती, जरी या चाचणी प्रकारांमध्ये बरेच काही आहे!!