सॉफ्टवेयर टेस्टिंग क्या हैं? (what is software testing in hindi)
सॉफ्टवेयर टेस्टिंग-एक प्रक्रिया हैं, जिसके अंतर्गत सिस्टम या सिस्टम कंपोनेंट्स की जांच की जाती हैं। इस परिक्षण का मुख्य हेतु यह जांचना हैं की-सिस्टम कंपनी द्वारा निर्धारित मानकों (या कंपनी की जरूरतों के अनुसार) तैयार की गयी हो।
आसान शब्दों में, अपने ग्राहकों को सॉफ्टवेर संबंधित जानकारी मुहैय्या कराने एवं उसकी गुणवत्ता परखने के लिए सॉफ्टवेर टेस्टिंग की जाती हैं। विक्रेता कंपनी द्वारा तयार सॉफ्टवेर को ग्राहक के जरूरतों के अनुसार विकसित किया जाता हैं और ग्राहक जिन परिस्थितियों में तयार सॉफ्टवेर का उपयोग करेगा, उस तरह की परिस्थितियों को लैब में तयार कर सॉफ्टवेर को परखा जाता है।
सॉफ्टवेर टेस्टिंग का प्राथमिक उद्देश्य, सॉफ्टवेर फेलियर को ढूँढना हैं, अगर टेस्टिंग के दौरान सॉफ्टवेर फेल हो जाता हैं। तो जिन कारणों की वजह से सॉफ्टवेर फेल हुआ हैं, उन्हें ठीक किया जाता हैं। जिससे सॉफ्टवेर बिना किसी तकनिकी बाधा के सुचारू रूप से काम कर सकें।
डेवलपमेंट टीम द्वारा सॉफ्टवेर तयार किया जाता हैं, उसके बाद तयार सॉफ्टवेर को टेस्टिंग टीम के पास भेजा जाता हैं। टेस्टिंग करनेवाले व्यक्ती को सॉफ्टवेर टेस्टर्स कहा जाता हैं।
सॉफ्टवेर टेस्टिंग के प्रकार (types of software testing in hindi)
सॉफ्टवेर टेस्टिंग के मुख्य रूप से 3 प्रकार हैं-
- ब्लैक बॉक्स टेस्टिंग (Black Box Testing)
- वाइट बॉक्स टेस्टिंग (White Box Testing)
- परफॉरमेंस टेस्टिंग (Performance Testing)
1. ब्लैक बॉक्स टेस्टिंग (Black Box Testing in hindi)
ब्लैक बॉक्स टेस्टिंग में सॉफ्टवेर सिस्टम को ब्लैक बॉक्स माना जाता हैं। ब्लैक बॉक्स का मतलब टेस्टिंग के दौरान, सॉफ्टवेर टेस्टर को सॉफ्टवेर की कमियों को जांचने के लिए सॉफ्टवेर के कोड की जानकारी की जरुरत नहीं होती। आसान शब्दों में, ब्लैक बॉक्स टेस्टिंग में सॉफ्टवेर कोड की जरुरत नहीं होती।
ब्लैक बॉक्स टेस्टिंग का मुख्य उद्देश्य सॉफ्टवेर की कार्यक्षमता को परखना होता हैं। ब्लैक बॉक्स टेस्टिंग का उपयोग सॉफ्टवेर डेवलपमेंट लाइफ साइकिल और टेस्टिंग लाइफ साइकिल के दौरान कई स्तर पर किया जाता हैं, जैसे की-यूनिट, इंटीग्रेशन, एक्सेपटन्स एंड रिग्रेशन टेस्टिंग।
टेस्टिंग प्रक्रिया में टेस्ट डिज़ाइनर वैलिड और इनवैलिड इनपुट्स को सेलेक्ट कर, सॉफ्टवेर द्वारा दिए जानेवाले उत्तर(आउटपुट) के आधार पर सॉफ्टवेर की अचूकता और कार्यक्षमता को परखता हैं।
निचे दिए गए त्रुटियों(एर्रर्स) के लिए ब्लैक बॉक्स टेस्टिंग की जाती हैं-
- गलत फंक्शन(Incorrect Function)
- इंटरफ़ेस एरर(Interface Error)
- एक्सटर्नल डेटाबेस या डेटा स्ट्रक्चर में बिघाड(Errors in external database or data structures)
- परफॉरमेंस एरर(Performance Errors)
- इनिशियलाइज़ेशन(सॉफ्टवेर की शुरुवात) और टर्मिनेशन(अंत) में तकनिकी समस्या(Initialization and termination problems)
ब्लैक बॉक्स टेस्टिंग को निम्नलिखित प्रश्नों के उत्तर पाने के लिए डिजाईन किया जाता हैं-
- सॉफ्टवेर सिस्टम की फंक्शनलिटी को किस प्रकार जांचा गया हैं?
- क्या सॉफ्टवेर सिस्टम की कार्यक्षमता सही हैं?
- क्या सॉफ्टवेर सिस्टम कुछ विशिष्ट इनपुट देने पर ही, सही आउटपुट देता हैं?
- सॉफ्टवेर सिस्टम के काम करने योग्य छोर के डाटा वैल्यू और डाटा वॉल्यूम क्या हैं?
- सॉफ्टवेर सिस्टम के कार्यक्षमता पर डाटा के स्पेसिफिक कॉम्बिनेशन का क्या असर होगा?
ब्लैक बॉक्स टेस्टिंग में उपयोग किए जानेवाले टूल्स (black box testing tools in hindi)
ब्लैक बॉक्स टेस्टिंग में मुख्य रूप से रिकॉर्ड और प्लेबैक टूल्स का उपयोग किया जाता हैं। इन टूल्स का उपयोग यह जांचने के लिए किया जाता हैं की-नए सुधारों ने पहले से सुचारू रूप से काम कर रहे सॉफ्टवेर सिस्टम में एरर तो नहीं निर्माण किया।
रिकॉर्ड और प्लेबैक टूल्स को सामान्यतः टीएसएल(TSL), वीबी स्क्रिप्ट(VB Script), जावा स्क्रिप्ट (Java Script), पर्ल(Per) जैसी प्रोग्रामिंग लैंग्वेजेज में लिखा जाता हैं।
ब्लैक बॉक्स टेस्टींग के फायदे (benefits of black box testing in hindi)
- टेस्टर और डेवलपर एक दुसरे पर निर्भर नहीं होते, जिसके कारन सॉफ्टवेर सिस्टम की निष्पक्ष जांच होती हैं और त्रुटियों को खोज डेवलपर को सूचित किया जाता हैं।
- ब्लैक बॉक्स टेस्टिंग, ग्लास बॉक्स टेस्टिंग के तुलना में बड़े कोड के टेस्टिंग के लिए अधिक प्रभावी हैं।
- ब्लैक बोक्स टेस्टिंग के लिए सॉफ्टवेर टेस्टर को सॉफ्टवेर कोड की जानकारी होना आवश्यक नहीं हैं।
- डेवलपमेंट टीम द्वारा सॉफ्टवेर सिस्टम के पूरा किए जाने के तुरंत बाद ब्लैक बॉक्स टेस्टिंग की जा सकती हैं।
- टेस्टर नॉन-टेक्निकल भी हो सकता हैं।
- ब्लैक बॉक्स टेस्टिंग का उपयोग सॉफ्टवेर सिस्टम और अपेक्षित परिणामों के बीच के विरोधाभास को जांचने के लिए किया जाता हैं।
ब्लैक बॉक्स टेस्टिंग-पद्धति (black box testing methods in hindi)
- ग्राफ बेस्ड टेस्टिंग मेथड(Graph Based Testing Method): हर एप्लीकेशन को ऑब्जेक्ट्स का उपयोग कर तयार किया जाता है। सॉफ्टवेर सिस्टम के सभी ऑब्जेक्ट्स को पहचान कर(ढूँढ कर) एक आलेख(ग्राफ) तयार किया जाता हैं।इस ग्राफ के उपयोग से ओबेक्ट रिलेशनशिप को पहचाना जाता हैं और उसी के आधार पर टेस्ट केसेस को एरर ढूँढने के लिए लिखा जाता हैं।
- एरर गेस्सिंग(त्रुटियों का पूर्वानुमान लगाना): एरर गेस्सिंग(त्रुटियों का पूर्वानुमान लगाना) यह पूरी तरह से सॉफ्टवेर टेस्टर और उसके अनुभव पर आधारित होता हैं। जब सिस्टम में एरर नहीं दिखाई देता हैं, तब इसका उपयोग किया जाता हैं। हालांकि ग्राफ बेस्ड टेस्टिंग मेथड में सभी संभावित एरर के बारें में जानकारी मिल जाती हैं।
- बाउंड्री वैल्यू एनालिसिस(Boundary Value Analysis): कई बार सॉफ्टवेर सिस्टम बाउंड्री पर नाकाम(फेल) हो जाते हैं, इसी कारन बाउंड्री वैल्यूज की टेस्टिंग करना जरुरी हो जाता हैं। बाउंड्री वैल्यू एनालिसिस में अधिकतम सीमा की वैल्यू तय की जाती हैं। बाउंड्री वैल्यूज में जस्ट मैक्सिमम, मिनिमम वैल्यू, इनसाइड/आउटसाइड बाउंड्री, टिपिकल वैल्यू और एरर वैल्यू भी शामिल होते हैं।
- एक्वीवैलेंस पार्टिशनिंग(Equivalence Partitioning): एक्वीवैलेंस पार्टिशनिंग, ब्लैक बॉक्स टेस्टिंग की एक मेथड हैं। जिसके अंतर्गत- सिस्टम के इनपुट डोमेन को डाटा क्लासेज में विभाजित किया जाता हैं। और इन डाटा क्लासेज से टेस्ट केसेस को तयार किया जाता हैं।
2. वाइट बॉक्स टेस्टिंग (White Box Testing in hindi)
वाइट बॉक्स टेस्टिंग को ओपन बॉक्स टेस्टिंग, क्लियर बॉक्स टेस्टिंग, गिलास बॉक्स टेस्टिंग के नाम से भी जाना जाता हैं।
ब्लैक बॉक्स टेस्टिंग के विपरीत, वाइट बॉक्स टेस्टिंग में सॉफ्टवेर के कोड को ध्यान में लेकर इंटरनल स्ट्रक्चर को जांचने के लिए टेस्ट केसेस निर्धारित किए जाते हैं। वाइट बॉक्स टेस्टिंग के लिए टेस्टर को प्रोग्रामिंग लैंग्वेजेज का ज्ञान होना आवश्यक हैं।
वाइट बॉक्स टेस्टिंग में टेस्टर, टेस्ट केस इनपुट की मदत से कोड पाथ को निर्धारित करता हैं और टेस्ट के अंत में प्राप्त होने वाले अपेक्षित आउटपुट को तय करता हैं।
उदहारण के तौर पर-इन सर्किट टेस्टिंग, जोकि इलेक्ट्रिकल हार्डवेअर टेस्टिंग हैं। इसमें सर्किट पर उपलब्ध हर नोड की जांच कर आउटपुट को मापा जाता हैं।
वाइट बॉक्स टेस्टिंग-सोफ्टवेर टेस्टिंग की एक ऐसी पद्धति हैं जिसमे सिस्टम में एरर ढूँढने के लिए सोफ्टवेर सिस्टम की कार्यप्रणाली की जानकारी होना आवश्यक हैं।
वाइट बॉक्स टेस्टिंग के फायदे (benefits of white box testing in hindi)
- सॉफ्टवेर के सोर्स कोड की जांच करके उसी आधार पर टेस्ट केस को लिखा जात हैं, इससे सॉफ्टवेर की त्रुटियों को आसानी से ढूँढा जा सकता हैं। उदहारण के तौर पर, सॉफ्टवेर के सोर्स कोड की जानकारी होने के कारन वाइट बॉक्स टेस्टर, एरर हैन्डेलिंग मैकेनिज्म के जरिए एरर का कम समय में पता लगा सकता हैं।
- वाइट बॉक्स टेस्टिंग के विपरीत ब्लैक बॉक्स टेस्टिंग में टेस्टर को सॉफ्टवेर के आतंरिक ढांचे की जानकारी नहीं होती, इसी कारन अगर एरर हैन्डेलिंग में ज्यादा समय और श्रम की जरुरत पड़ती हैं।
- वाइट बॉक्स टेस्टिंग का उपयोग, सॉफ्टवेर डेवलपमेंट के शुरुवाती स्तर में किया जाता हैं, इस प्रक्रिया में टेस्टर द्वारा उपयोग में लाए जानेवाले टेस्ट केसेस की अहम भूमिका होती हैं।
- वाइट बॉक्स टेस्टिंग में सोफ्टवेर टेस्टर को सोर्स कोड की जानकारी होती हैं। अगर कोड में कुछ जय लाइनें लिखी गयी हैं, जिसके कारन एरर उत्पन्न हो सकता हैं। तो उन आतिरिक्त लाइनों को टेस्टर द्वारा हटाया जाता हैं, जिससे सोर्स कोड भी छोटा हो जाता हैं।
वाइट बॉक्स टेस्टिंग और ब्लैक बॉक्स टेस्टिंग में अंतर (difference between white box testing and black box testing in hindi)
अनुक्रम | वाइट बॉक्स टेस्टिंग(WBT) | ब्लैक बॉक्स टेस्टिंग(BBT) |
1 | वाइट बॉक्स टेस्टिंग, एक सॉफ्टवेर टेस्टिंग पद्धति हैं-जिसमें सोफ्टवेर के आतंरिक ढांचे(इंटरनल स्ट्रक्चर) और कोड की जांच की जाती हैं, और इस विषय में टेस्टर को जानकारी होती हैं। | ब्लैक बॉक्स टेस्टिंग, एक सोफ्टवेर टेस्टिंग पद्धति हैं, जिसमें सोफ्टवेर के आतंरिक ढांचे(इंटरनल स्ट्रक्चर) और कोड की जांच की जाती हैं, और इस विषय में टेस्टर को जानकारी नहीं होती हैं। |
2 | वाइट बॉक्स टेस्टिंग में सॉफ्टवेर के इंटरनल कोड की जांच की जाती हैं। | ब्लैक बॉक्स टेस्टिंग में केवल सोफ्टवेर के इनपुट और आउटपुट की जांच की जाती हैं। |
3 | वाइट बॉक्स टेस्टिंग के दौरान, सोर्स कोड में लिखित हर स्टेटमेंट, लूप की जांच, टेस्ट केसेस के आधार पर की जाती हैं। | ब्लैक बॉक्स टेस्टिंग में, टेस्ट केसेस के आधार पर केवल इनपुट और आउटपुट की जांच की जाती हैं |
4 | चूँकि,वाइट बॉक्स टेस्टिंग के दौरान हर स्टेटमेंट की जांच की जाती हैं, इस कारन तयार सोफ्टवेर पूरी तरह से त्रुटिरहित(एरर-फ्री) होता हैं। | ब्लैक बॉक्स टेस्टिंग में सोर्स कोड की जांच इनपुट-आउटपुट के आधार पर होती हैं, न की हर लाइन को जांचा जाता हैं। इसी कारन सॉफ्टवेर को पुरी तरह से त्रुटिरहित(एरर-फ्री) नहीं कहा जा सकता। |
5 | सोफ्टवेर सिस्टम की गुणवत्ता सुधारने में महत्वपूर्ण भूमिका। | सोफ्टवेर सिस्टम की गुणवत्ता सुधारने में वाइट बॉक्स टेस्टिंग की तुलना में कम कारगर। |
6 | प्रोग्रामिंग की जानकारी वाले विशेषज्ञ व्यक्ति ही वाइट बॉक्स टेस्टिंग कर सकते हैं। | ब्लैक बॉक्स टेस्टिंग के लिए प्रोग्रामिंग की जानकारी होना जरुरी नहीं होता। |
3. परफॉरमेंस टेस्टिंग (Performance Testing in hindi)
परफॉरमेंस टेस्टिंग, एक गैर-तकनिकी टेस्टिंग पद्धति हैं, जिसमें सोफ्टवेर सिस्टम को स्थिरता, सुचारू रूप से काम करने की काबिलियत जैसे अन्य मानकों पर अलग-अलग वर्कलोड में जांचा जाता हैं।
परफॉरमेंस टेस्टिंग का मुख्य उद्देश्य सोफ्टवेर की विश्वसनीयता, स्थिरता, मापनीयता और उपलब्ध संसाधनों का कम उपयोग करने की क्षमता को परखना हैं।
परफॉरमेंस टेस्टिंग के तरीके (types of performance testing in hindi)
लोड टेस्टिंग (load testing in hindi)
सोफ्टवेर सिस्टम एक विशिष्ट प्रकार के कार्यभार(वर्कलोड) में किस प्रकार से काम करता हैं, यह जांचने का सबसे आसान तरीका लोड टेस्टिंग यह हैं।
लोड टेस्टिंग से विशिष्ट लोड में काम करने से डेटाबेस, एप्लीकेशन सर्वर पर पड़नेवाला प्रभाव इन जैसी जरुरी चीजों का परिक्षण किया जाता हैं।
स्ट्रेस टेस्टिंग (stress testing in hindi)
स्ट्रेस टेस्टिंग में सोफ्टवेर सिस्टम की अधिकतम कार्यभार में काम करने के क्षमता से ज्यादा में उसे(सोफ्टवेर) जांचा हैं। जिससे यह पता चल सके अधिकतम सीमा से भार होने पर सोफ्टवेर सिस्टम किस प्रकार काम करता हैं। स्ट्रेस टेस्टिंग को सोफ्टवेर को नाकाम करने के लिए किया जाता हैं।
सिस्टम पर वर्तमान यूजर्स से दोगुना यूजर्स को जोड़ा जाता हैं, और सॉफ्टवेर को तब तक रन किया जाता हैं जब तक सोफ्टवेर नाकाम न हो जाए। इस प्रकार के टेस्ट को सोफ्टवेर की मजबूती जांचने के लिए किया जाता हैं।
उदारहण के तौर पर,
वेब सर्वर की स्ट्रेस टेस्टिंग शेल स्क्रिप्ट(शेल स्क्रिप्ट, एक स्क्रिप्ट है, जिसे ऑपरेटिंग सिस्टम के शेल या कमांड लाइन इंटरप्रेटर के लिए इस्तेमाल किया जाता हैं।), बोट्स(बोट्स, सोफ्टवेर एप्लीकेशन होते हैं)।
आम तौर पर, बोट्स आसन और स्ट्रक्चरली रिपीटेटीव काम तेजीसे करते हैं। इसी बीच कई डिनायल ऑफ़ सर्विस टूल्स का इस्तेमाल, यह जांचने के लिए किया जाता हैं की अधिकतम स्ट्रेस में वेबिस्ते किस प्रकार काम करती हैं।
इस लेख से सबंधित यदि आपका कोई भी सवाल या सुझाव है, तो आप उसे नीचे कमेंट के जरिये हमसे पूछ सकते हैं।
Sir mujhai jayda knowledge chaiya
Thanks sir ji
Aapki banai gai nots bhaut hi important hai
Maine Aapki class se bhaut kucch shikha hai
apke notes bhot aache or easy hai jiske hum logo ko sikhne me asani hogi thank you…………………..