सॉफ्टवेअर चाचणी, किंवा सॉफ्टवेअर चाचणी, अनुप्रयोग चाचणी म्हणून देखील ओळखले जाते.
सॉफ्टवेअर चाचणी ही प्रामुख्याने अनेक परस्परसंबंधित प्रक्रियांनी बनलेली एक मोठी प्रक्रिया आहे. सॉफ्टवेअर चाचणीचे मुख्य उद्दिष्ट हे सॉफ्टवेअरची अखंडता आणि त्याच्या मूलभूत आवश्यकतांनुसार त्याच्या पूर्णतेचे मोजमाप करणे आहे. सॉफ्टवेअर चाचणीमध्ये वेगवेगळ्या चाचणी प्रक्रियेद्वारे सॉफ्टवेअरचे परीक्षण आणि चाचणी समाविष्ट असते. या प्रक्रियेच्या उद्दिष्टांमध्ये हे समाविष्ट असू शकते:
कार्यात्मक/व्यवसाय आवश्यकतांच्या विरूद्ध सॉफ्टवेअर पूर्णतेची पडताळणी
दोष/तांत्रिक त्रुटी ओळखणे आणि सॉफ्टवेअर त्रुटी-मुक्त असल्याची खात्री करणे
उपयोगिता, कार्यप्रदर्शन, सुरक्षा, स्थानिकीकरण, सुसंगतता आणि स्थापना यांचे मूल्यांकन
चाचणी केलेल्या सॉफ्टवेअरने पूर्ण किंवा वापरासाठी योग्य असण्यासाठी सर्व चाचण्या उत्तीर्ण केल्या पाहिजेत. विविध प्रकारच्या सॉफ्टवेअर चाचणी पद्धतींमध्ये व्हाईट बॉक्स टेस्टिंग, ब्लॅक बॉक्स टेस्टिंग आणि ग्रे बॉक्स टेस्टिंग यांचा समावेश होतो. शिवाय, सॉफ्टवेअरची संपूर्णपणे, घटक/युनिट्समध्ये किंवा थेट प्रणालीमध्ये चाचणी केली जाऊ शकते.
ब्लॅक बॉक्स टेस्टिंग हे सॉफ्टवेअर चाचणी तंत्र आहे जे सिस्टमच्या अंतर्गत कामकाजाच्या संदर्भात सॉफ्टवेअरच्या कार्यक्षमतेचे विश्लेषण करण्यावर लक्ष केंद्रित करते. ब्लॅक बॉक्स चाचणी ही ग्राहकांच्या गरजा, वैशिष्ट्ये आणि उच्च-स्तरीय डिझाइन धोरणांचे विश्लेषण करण्यासाठी एक पद्धत म्हणून विकसित केली गेली.
ब्लॅक बॉक्स टेस्टिंग टेस्टर वैध आणि अवैध कोड एक्झिक्यूशन आणि इनपुट अटींचा संच निवडतो आणि वैध आउटपुट प्रतिसाद तपासतो.
ब्लॅक बॉक्स टेस्टिंगला फंक्शनल टेस्टिंग किंवा क्लोज बॉक्स टेस्टिंग असेही म्हणतात.
शोध इंजिन हे ब्लॅक बॉक्स चाचणीच्या अधीन असलेल्या अनुप्रयोगाचे एक साधे उदाहरण आहे. शोध इंजिन वापरकर्ता वेब ब्राउझरच्या शोध बारमध्ये मजकूर प्रविष्ट करतो. शोध इंजिन नंतर वापरकर्ता डेटा परिणाम (आउटपुट) शोधते आणि पुनर्प्राप्त करते.
ब्लॅक बॉक्स चाचणीच्या फायद्यांमध्ये हे समाविष्ट आहे:
ब्लॅक बॉक्स टेस्टिंगचे काही तोटे देखील आहेत, जसे की:
व्हाईट-बॉक्स चाचणी दरम्यान, पूर्व-निवडलेल्या आउटपुट मूल्यांचे प्रमाणीकरण करण्यासाठी कोड पूर्व-निवडलेल्या इनपुट मूल्यांसह चालविला जातो. व्हाईट-बॉक्स चाचणीमध्ये सहसा स्टब कोड लिहिणे समाविष्ट असते (विशिष्ट वैशिष्ट्य पुनर्स्थित करण्यासाठी वापरल्या जाणार्या कोडचा तुकडा. स्टब विद्यमान कोडचे वर्तन अनुकरण करू शकतो, जसे की रिमोट मशीनवरील प्रक्रिया.) आणि ड्रायव्हर्स देखील.
व्हाईट-बॉक्स चाचणीच्या फायद्यांमध्ये हे समाविष्ट आहे:
तोटे समाविष्ट आहेत:
युनिट चाचणी हा सॉफ्टवेअर डेव्हलपमेंट लाइफ सायकल (SDLC) चा एक घटक आहे ज्यामध्ये इच्छित उपयुक्तता किंवा वर्तनासाठी सॉफ्टवेअर प्रोग्रामच्या सर्वात लहान भागांवर एक व्यापक चाचणी प्रक्रिया वैयक्तिकरित्या लागू केली जाते.
युनिट चाचणी ही बहुतेक एंटरप्राइझ सॉफ्टवेअर डेव्हलपमेंट क्रियाकलापांमध्ये लागू केलेली गुणवत्ता मोजमाप आणि मूल्यमापन प्रक्रिया आहे. सर्वसाधारणपणे, युनिट चाचणी सॉफ्टवेअर/अनुप्रयोग/प्रोग्रामच्या एकूण उद्दिष्टाशी सॉफ्टवेअर कोड कितपत अनुरूप आहे आणि त्याची उपयुक्तता इतर लहान युनिट्सवर कसा परिणाम करते याचे मूल्यांकन करते. युनिट चाचण्या मॅन्युअली – एक किंवा अधिक डेव्हलपरद्वारे – किंवा स्वयंचलित सॉफ्टवेअर सोल्यूशनद्वारे केल्या जाऊ शकतात.
चाचणी दरम्यान, प्रत्येक युनिट मुख्य प्रोग्राम किंवा इंटरफेसपासून वेगळे केले जाते. युनिट चाचण्या सामान्यत: विकासानंतर आणि तैनातीपूर्वी केल्या जातात, त्यामुळे एकीकरण आणि लवकर समस्या शोधणे सुलभ होते. प्रोग्रामिंग भाषा, सॉफ्टवेअर ऍप्लिकेशन आणि चाचणी उद्दिष्टांवर अवलंबून युनिटचा आकार किंवा व्याप्ती बदलते.
कार्यात्मक चाचणी ही सॉफ्टवेअर डेव्हलपमेंटमध्ये वापरली जाणारी चाचणी प्रक्रिया आहे जिथे सॉफ्टवेअर सर्व आवश्यकतांचे पालन करते याची खात्री करण्यासाठी चाचणी केली जाते. सॉफ्टवेअरमध्ये त्याच्या कार्यात्मक आवश्यकतांमध्ये निर्दिष्ट केलेली सर्व आवश्यक कार्यक्षमता आहे याची खात्री करण्यासाठी हा तपासण्याचा एक मार्ग आहे.
फंक्शनल टेस्टिंगचा वापर मुख्यतः सॉफ्टवेअरचा एक भाग अंतिम वापरकर्ता किंवा व्यवसायासाठी आवश्यक असलेले समान आउटपुट प्रदान करतो हे सत्यापित करण्यासाठी केला जातो. सामान्यतः, फंक्शनल टेस्टिंगमध्ये प्रत्येक सॉफ्टवेअर फंक्शनचे व्यावसायिक आवश्यकतांनुसार मूल्यांकन आणि तुलना करणे समाविष्ट असते. सॉफ्टवेअरला काही संबंधित इनपुट देऊन चाचणी केली जाते जेणेकरून आउटपुट त्याच्या मूलभूत आवश्यकतांशी कसे जुळते, संबंधित किंवा बदलते हे पाहण्यासाठी त्याचे मूल्यमापन केले जाऊ शकते. शिवाय, कार्यात्मक चाचण्या सॉफ्टवेअरची उपयोगिता देखील तपासतात, उदाहरणार्थ नेव्हिगेशन कार्ये आवश्यकतेनुसार कार्य करतात याची खात्री करणे.
नवीन समस्या सॉफ्टवेअर बदलांचे परिणाम आहेत की नाही हे निर्धारित करण्यासाठी रीग्रेशन चाचणी हा एक प्रकारचा सॉफ्टवेअर चाचणी आहे.
बदल लागू करण्यापूर्वी, प्रोग्रामची चाचणी केली जाते. बदल लागू केल्यानंतर, बदलामुळे नवीन बग किंवा समस्या निर्माण झाल्या आहेत की नाही किंवा वास्तविक बदलाने त्याचा हेतू पूर्ण केला आहे का हे शोधण्यासाठी निवडलेल्या भागात प्रोग्रामची पुन्हा चाचणी केली जाते.
मोठ्या सॉफ्टवेअर ऍप्लिकेशन्ससाठी रिग्रेशन टेस्टिंग आवश्यक आहे, कारण एखाद्या समस्येचा एक भाग बदलल्याने ऍप्लिकेशनच्या वेगळ्या भागासाठी नवीन समस्या निर्माण झाली आहे की नाही हे जाणून घेणे अनेकदा कठीण असते. उदाहरणार्थ, बँक अर्ज कर्ज फॉर्ममध्ये बदल केल्यास मासिक व्यवहार अहवाल अयशस्वी होऊ शकतो. बहुतेक प्रकरणांमध्ये, समस्या असंबंधित वाटू शकतात, परंतु ते अनुप्रयोग विकसकांमध्ये निराशाचे कारण असू शकतात.
रीग्रेशन चाचणी आवश्यक असलेल्या इतर परिस्थितींमध्ये काही बदल निश्चित उद्दिष्ट साध्य करतात की नाही हे शोधणे किंवा समस्यांशिवाय कालावधीनंतर पुन्हा उद्भवणाऱ्या समस्यांशी संबंधित नवीन धोक्यांची चाचणी समाविष्ट करते.
आधुनिक प्रतिगमन चाचणी प्रामुख्याने विशिष्ट व्यावसायिक चाचणी साधनांद्वारे हाताळली जाते जी विद्यमान सॉफ्टवेअरचे स्नॅपशॉट घेतात ज्याची विशिष्ट बदल लागू केल्यानंतर तुलना केली जाते. मानवी परीक्षकांसाठी स्वयंचलित सॉफ्टवेअर परीक्षकांप्रमाणे कार्यक्षमतेने कार्य करणे जवळजवळ अशक्य आहे. हे विशेषतः बँका, रुग्णालये, उत्पादन कंपन्या आणि मोठ्या किरकोळ विक्रेते यांसारख्या मोठ्या आयटी वातावरणातील मोठ्या आणि जटिल सॉफ्टवेअर अनुप्रयोगांसह सत्य आहे.
तणाव चाचणी म्हणजे सॉफ्टवेअर किंवा हार्डवेअरची कार्यक्षमता अत्यंत आणि प्रतिकूल परिस्थितीत समाधानकारक आहे की नाही हे निर्धारित करण्यासाठी चाचणी करणे, जे हेवी नेटवर्क ट्रॅफिक, प्रक्रिया लोडिंग, अंडरक्लॉकिंग, ओव्हरक्लॉकिंग आणि संसाधनांच्या कमाल वापराच्या मागणीच्या परिणामी उद्भवू शकते.
बहुतेक प्रणाली सामान्य ऑपरेटिंग परिस्थिती गृहीत धरून विकसित केल्या जातात. त्यामुळे, जरी मर्यादा ओलांडली गेली असली तरी, विकासादरम्यान प्रणालीची तणावाची चाचणी घेतल्यास त्रुटी नगण्य आहेत.
तणाव चाचणी खालील संदर्भांमध्ये वापरली जाते:
स्वयंचलित चाचणी (सॉफ्टवेअर चाचणी ऑटोमेशन) हा कोड चाचणीचा एक दृष्टीकोन आहे जो विशेष सॉफ्टवेअर साधनांचा वापर करतो जे आपोआप चाचण्या चालवतात आणि नंतर अपेक्षित परिणामांसह वास्तविक चाचणी परिणामांची तुलना करतात.
सतत वितरण (CD), सतत एकात्मता (CI), DevOps आणि DevSecOps मध्ये स्वयंचलित चाचणी महत्त्वाची भूमिका बजावते. स्वयंचलित चाचणीच्या मुख्य फायद्यांमध्ये हे समाविष्ट आहे:
सॉफ्टवेअर डेव्हलपमेंटमध्ये, बिल्ड प्रक्रियेदरम्यान अॅप्लिकेशन बिल्ड त्रुटींपासून मुक्त आहे आणि त्याचे इच्छित कार्य करते याची खात्री करण्यासाठी स्वयंचलित चाचण्या करणे विशेषतः उपयुक्त आहे.
सॉफ्टवेअर चाचणी स्वयंचलित करण्यासाठी वेळ काढल्याने कोड बदलामुळे विद्यमान कार्यक्षमता खंडित होण्याचा धोका कमी करून शेवटी विकासकांचा वेळ वाचेल.
विकास प्रक्रियेतील चाचणी हा अत्यंत महत्त्वाचा टप्पा आहे. सर्व बग्स निश्चित केले आहेत आणि उत्पादन, सॉफ्टवेअर किंवा हार्डवेअर, हेतूनुसार किंवा त्याच्या लक्ष्य कामगिरीच्या शक्य तितक्या जवळ कार्य करते याची खात्री करते. मॅन्युअल चाचणीऐवजी स्वयंचलित चाचणी, कमीत कमी दोषांसह वेळेवर वापरकर्त्याच्या गरजा पूर्ण करणारे स्वस्त-प्रभावी सॉफ्टवेअर सातत्याने वितरित करण्यासाठी आवश्यक आहे.
मॅन्युअल चाचणी अजूनही विकासादरम्यान वेगवेगळ्या वेळी केली जाते, परंतु हे मुख्यतः डेव्हलपर किंवा हार्डवेअर अभियंत्यांनी स्वतः केले आहे की त्यांनी केलेल्या बदलांचा इच्छित परिणाम झाला आहे की नाही हे त्वरीत पाहण्यासाठी.
Ercole Palmeri
गेल्या सोमवारी, फायनान्शिअल टाईम्सने OpenAI सह करार जाहीर केला. FT ने त्याच्या जागतिक दर्जाच्या पत्रकारितेचा परवाना…
लाखो लोक स्ट्रीमिंग सेवांसाठी पैसे देतात, मासिक सदस्यता शुल्क भरतात. असे सामान्य मत आहे की आपण…
Veeam द्वारे Coveware सायबर खंडणी घटना प्रतिसाद सेवा प्रदान करणे सुरू ठेवेल. Coveware फॉरेन्सिक आणि उपाय क्षमता प्रदान करेल…
वनस्पती व्यवस्थापनासाठी नाविन्यपूर्ण आणि सक्रिय दृष्टीकोनसह, भविष्यसूचक देखभाल तेल आणि वायू क्षेत्रात क्रांती घडवत आहे.…