सॉफ्टवेयर टेस्टिंग - तरीके

सॉफ्टवेयर परीक्षण के लिए विभिन्न तरीकों का इस्तेमाल किया जा सकता है। यह अध्याय उपलब्ध विधियों का संक्षेप में वर्णन करता है।

ब्लैक-बॉक्स परीक्षण

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

निम्न तालिका ब्लैक-बॉक्स परीक्षण के फायदे और नुकसान को सूचीबद्ध करती है।

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

व्हाइट-बॉक्स परीक्षण

व्हाइट-बॉक्स परीक्षण आंतरिक तर्क और कोड की संरचना की विस्तृत जांच है। व्हाइट-बॉक्स परीक्षण भी कहा जाता हैglass testing या open-box testing। प्रदर्शन के लिए पंक्तिबद्धwhite-box एक आवेदन पर परीक्षण, एक परीक्षक को कोड के आंतरिक कामकाज को जानना होगा।

परीक्षक को स्रोत कोड के अंदर एक नज़र रखने और यह पता लगाने की आवश्यकता है कि कोड की कौन सी इकाई / हिस्सा अनुचित व्यवहार कर रहा है।

निम्न तालिका व्हाइट-बॉक्स परीक्षण के फायदे और नुकसान को सूचीबद्ध करती है।

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

ग्रे-बॉक्स परीक्षण

ग्रे-बॉक्स परीक्षण एक आवेदन के आंतरिक कामकाज का एक सीमित ज्ञान होने के साथ आवेदन का परीक्षण करने की एक तकनीक है। सॉफ़्टवेयर परीक्षण में, वाक्यांश जितना अधिक आप जानते हैं, उतना ही बेहतर होता है कि किसी एप्लिकेशन का परीक्षण करते समय बहुत अधिक वजन होता है।

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

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

परीक्षण विधियों की तुलना

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

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