सॉफ्टवेयर परीक्षण में डोमेन परीक्षण क्या है? (उदाहरण सहित)

⚡ स्मार्ट सारांश

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

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

समतुल्यता वर्गों और सीमा मूल्यों के साथ सॉफ्टवेयर परीक्षण में डोमेन परीक्षण

डोमेन परीक्षण क्या है?

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

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

डोमेन टेस्टिंग प्रत्येक विशिष्ट डोमेन के लिए अलग-अलग होती है, इसलिए किसी सॉफ्टवेयर सिस्टम का परीक्षण करने के लिए आपको डोमेन-विशिष्ट ज्ञान की आवश्यकता होती है।

डोमेन परीक्षण का सरल अभ्यास

डोमेन परीक्षण में, हम डोमेन को उप-डोमेन (समतुल्यता वर्ग) में विभाजित करते हैं और फिर प्रत्येक उप-डोमेन से मानों का उपयोग करके परीक्षण करते हैं। उदाहरण के लिए, यदि परीक्षण के लिए कोई वेबसाइट (डोमेन) दी गई है, तो हम परीक्षण की आसानी के लिए वेबसाइट को छोटे भागों (उप-डोमेन) में विभाजित करेंगे।

इस डोमेन में किसी एक इनपुट वेरिएबल या इनपुट वेरिएबल्स के संयोजन का परीक्षण शामिल हो सकता है।

अभ्यासकर्ता अक्सर डोमेन परीक्षण के सबसे सरल मामलों का अध्ययन दो अन्य नामों से करते हैं, "सीमा परीक्षण" और "समतुल्यता वर्ग विश्लेषण"।

सीमा परीक्षण - सीमा मान विश्लेषण (BVA) विभाजनों के बीच की सीमाओं पर परीक्षण पर आधारित है। हम विभाजन/वर्गों में वैध और अवैध दोनों इनपुट मानों का परीक्षण करेंगे।

समतुल्यता वर्ग परीक्षण - इस तकनीक के पीछे विचार परीक्षण स्थितियों के एक सेट को समूहों या सेटों में विभाजित करना (यानी विभाजित करना) है जिन्हें समान माना जा सकता है (यानी सिस्टम को उन्हें समान रूप से संभालना चाहिए), इसलिए 'तुल्यता विभाजन'।

डोमेन टेस्टिंग के लिए भी यही सरलीकृत रूप लागू होता है।

  • केवल इनपुट चरों के परीक्षण के लिए
  • केवल परीक्षण किए जाने पर ही सिस्टम स्तर
  • केवल तभी जब एक बार में एक का परीक्षण किया जाए
  • केवल तभी जब बहुत सतही तरीके से परीक्षण किया जाए

इसे निम्नानुसार सरलीकृत किया जा सकता है:

परिवर्तनीय मान्य वर्ग समतुल्यता वर्ग अमान्य वर्ग समतुल्यता वर्ग सीमाएँ और विशेष मामले नोट्स
X 0-100 0
100
<0 -1
> 100 101

स्पष्टीकरण:

  • यदि कोई फ़ील्ड 0-100 की रेंज स्वीकार करता है, तो उस फ़ील्ड को -1 और 101 स्वीकार नहीं करना चाहिए, क्योंकि वे अमान्य प्रविष्टियाँ हैं और सीमाओं से बाहर हैं।
  • इस फ़ील्ड में 0, 100 और इनके बीच की कोई भी संख्या जैसे मान स्वीकार किए जाने चाहिए।

इस तरह की टेबल बनाना (व्यवहार में)

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

डोमेन परीक्षण रणनीति

डोमेन टेस्टिंग करते समय आपको निम्नलिखित बातों का ध्यान रखना होगा:

  • हम किस डोमेन का परीक्षण कर रहे हैं?
  • मानों को वर्गों में कैसे समूहित करें?
  • वर्गों के कौन से मानों का परीक्षण किया जाना है?
  • परिणाम का निर्धारण कैसे करें?

हम किस डोमेन का परीक्षण कर रहे हैं?

हम जिस भी डोमेन का परीक्षण करते हैं, उसमें कुछ इनपुट कार्यक्षमता और एक आउटपुट कार्यक्षमता होती है। कुछ इनपुट चर दर्ज किए जाने होते हैं, और उचित आउटपुट को सत्यापित किया जाना होता है। नीचे दिया गया आरेख इनपुट-आउटपुट संबंध को दर्शाता है।

डोमेन परीक्षण रणनीति, जो डोमेन में प्रवेश करने वाले इनपुट चरों और आउटपुट उत्पन्न करने को दर्शाती है।

डोमेन परीक्षण उदाहरण

एकल इनपुट परीक्षण परिदृश्य पर विचार करें:

C = a+b, जहाँ a और b इनपुट चर हैं तथा C आउटपुट चर है।

उपरोक्त उदाहरण में, वर्गीकरण की कोई आवश्यकता नहीं है, और न ही चरों के किसी संयोजन की आवश्यकता है।

नीचे दिए गए बहु इनपुट और उपयुक्त आउटपुट परिदृश्य पर विचार करें:

बच्चों के लिए एक खेल प्रदर्शनी पर विचार करें। छह प्रतियोगिताएँ आयोजित की गई हैं, और टिकट आयु और लिंग के आधार पर दिए जाने हैं। टिकट वितरण प्रणाली, खेल प्रदर्शनी की संपूर्ण कार्यप्रणाली के परीक्षण के लिए निर्धारित मॉड्यूल में से एक है।

परिदृश्य के अनुसार, हमें आयु और प्रतियोगिताओं के आधार पर छह परिदृश्य मिले:

  • 5 वर्ष से अधिक और 10 वर्ष से कम आयु के लड़कों को कहानी सुनाने में भाग लेना चाहिए।
  • 5 वर्ष से अधिक और 10 वर्ष से कम आयु की लड़कियां चित्रकला प्रतियोगिता में भाग ले सकती हैं।
  • यदि लड़के की आयु 10 वर्ष से अधिक और 15 वर्ष से कम है, तो उसे प्रश्नोत्तरी में भाग लेना चाहिए।
  • 10 वर्ष से अधिक और 15 वर्ष से कम आयु की लड़कियों को निबंध लेखन में भाग लेना चाहिए।
  • पांच वर्ष या उससे कम आयु के लड़के और लड़कियां दोनों ही कविता प्रतियोगिता में भाग ले सकते हैं।
  • 15 वर्ष से अधिक आयु के लड़के और लड़कियों दोनों को कविता प्रतियोगिता में भाग लेना चाहिए।

यहां इनपुट आयु और लिंग होंगे, और इस प्रकार प्रतियोगिता के लिए टिकट जारी किया जाएगा। यह वह मामला है जहां इनपुट का विभाजन, या बस समूहीकरण किया जाता है।ping मूल्यों का मुद्दा सामने आता है।

मानों को वर्गों में कैसे समूहित करें?

कुछ मानों को विभाजित करने का अर्थ है उन्हें ऐसे भागों में बाँटना जिनमें कोई अतिव्यापीता न हो।ping उपसमुच्चय।

जैसा कि हमने पहले चर्चा की थी कि विभाजन दो प्रकार का होता है:

  • समतुल्य विभाजन – समतुल्यता विभाजन एक सॉफ्टवेयर परीक्षण तकनीक है जो सॉफ्टवेयर इकाई के इनपुट डेटा को समतुल्य डेटा के विभाजनों में विभाजित करती है, जिससे परीक्षण के मामलों इसे प्राप्त किया जा सकता है। सिद्धांत रूप में, परीक्षण मामलों को प्रत्येक विभाजन को कम से कम एक बार कवर करने के लिए डिज़ाइन किया जाता है।
  • सीमा मान विश्लेषण सीमा मान विश्लेषण एक सॉफ्टवेयर परीक्षण तकनीक है जिसमें परीक्षणों को एक सीमा में सीमा मानों के प्रतिनिधियों को शामिल करने के लिए डिज़ाइन किया जाता है। यह विचार सीमा से लिया गया है।

उपरोक्त उदाहरण में, हम मानों को उपसमूहों में विभाजित कर रहे हैं। हम आयु को निम्नलिखित वर्गों में विभाजित कर रहे हैं:

  • कक्षा 1: 5 से 10 वर्ष की आयु वर्ग के बच्चे
  • कक्षा 2: 5 वर्ष से कम आयु वर्ग के बच्चे
  • कक्षा 3: 10 से 15 वर्ष की आयु वर्ग के बच्चे
  • कक्षा 4: 15 वर्ष से अधिक आयु वर्ग के बच्चे।

वर्गों के कौन से मानों का परीक्षण किया जाना है?

परीक्षण के लिए चुने गए मान सीमा मान होने चाहिए:

  • सीमाएँ उन समतुल्यता वर्गों का प्रतिनिधित्व करती हैं जिनसे हम उन्हें नमूना लेते हैं। अन्य वर्ग सदस्यों की तुलना में इनमें त्रुटि उजागर होने की संभावना अधिक होती है, इसलिए ये बेहतर प्रतिनिधि होती हैं।
  • तुल्यता वर्ग का सबसे अच्छा प्रतिनिधि श्रेणी के बीच का मान होता है।

उपरोक्त उदाहरण के लिए हमारे पास परीक्षण हेतु निम्नलिखित वर्ग हैं:

उदाहरण के लिए, परिदृश्य #1 के लिए:

कक्षा 1: 5 से 10 वर्ष की आयु वर्ग के बच्चे (आयु >5 और <=10)

सीमा मान:

  • मान 10 के बराबर या उससे कम होने चाहिए। इसलिए, 10 वर्ष की आयु को इस वर्ग में शामिल किया जाना चाहिए।
  • मान 5 से अधिक होना चाहिए। इसलिए, 5 वर्ष की आयु को इस वर्ग में शामिल नहीं किया जाना चाहिए।
  • मान 10 के बराबर या उससे कम होने चाहिए। इसलिए, 11 वर्ष की आयु को इस वर्ग में शामिल नहीं किया जाना चाहिए।
  • मान 5 से अधिक होना चाहिए। इसलिए, 6 वर्ष की आयु को इस वर्ग में शामिल किया जाना चाहिए।

समतुल्यता विभाजन मान:

समतुल्यता विभाजन का संदर्भ तब दिया जाता है जब प्रत्येक विभाजन से केवल एक ही शर्त का परीक्षण करना होता है। इसमें, हम यह मानते हैं कि यदि किसी विभाजन में एक शर्त सही है, तो सभी शर्तें सही होनी चाहिए। इसी प्रकार, यदि उस विभाजन में एक शर्त सही नहीं है, तो हम यह मानते हैं कि अन्य कोई भी शर्त सही नहीं होगी। उदाहरण के लिए,

(आयु >5 व <=10)

चूंकि 6 से 10 तक के मान मान्य हैं, इसलिए 6, 7, 8, 9 और 10 में से किसी एक मान को चुनना होगा। अतः चयनित आयु "8" आयु वर्ग (आयु >5 और <=10) के लिए एक मान्य इनपुट आयु है। इस प्रकार के विभाजन को समतुल्यता विभाजन कहा जाता है।

परिदृश्य लिए जाने वाले सीमा मान समतुल्यता विभाजन मान
लड़का – आयु >5 और <=10 इनपुट आयु = 6
इनपुट आयु = 5
इनपुट आयु = 11
इनपुट आयु = 10
इनपुट आयु = 8
लड़की – आयु >5 और <=10 इनपुट आयु = 6
इनपुट आयु = 5
इनपुट आयु = 11
इनपुट आयु = 10
इनपुट आयु = 8
लड़का – आयु >10 और <=15 इनपुट आयु = 11
इनपुट आयु = 10
इनपुट आयु = 15
इनपुट आयु = 16
इनपुट आयु = 13
लड़की – आयु >10 और <=15 इनपुट आयु = 11
इनपुट आयु = 10
इनपुट आयु = 15
इनपुट आयु = 16
इनपुट आयु = 13
आयु<=5 इनपुट आयु = 4
इनपुट आयु = 5
इनपुट आयु = 3
आयु> 15 इनपुट आयु = 15
इनपुट आयु = 16
इनपुट आयु = 25

हम कैसे निर्धारित करें कि प्रोग्राम परीक्षण में उत्तीर्ण हुआ या असफल?

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

उदाहरण के परिणामों का निर्धारण: नीचे दी गई स्क्रीन प्रत्येक आयु और लिंग संयोजन के लिए टिकटिंग आउटपुट दिखाती है।

डोमेन परीक्षण परिणामों को निर्धारित करने के लिए उपयोग किए जाने वाले प्रत्येक आयु और लिंग संयोजन के लिए टिकटिंग आउटपुट।

अतः, यदि उपरोक्त सभी परीक्षण सफल होते हैं, तो प्रतियोगिता में टिकट जारी करने का डोमेन सफल हो जाता है। यदि नहीं, तो डोमेन असफल हो जाता है।

डोमेन परीक्षण संरचना

आमतौर पर, डोमेन टेस्टिंग में टेस्टर नीचे दिए गए चरणों का पालन करते हैं। इन्हें हमारी टेस्टिंग आवश्यकताओं के अनुसार अनुकूलित किया जा सकता है या छोड़ा जा सकता है।

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

अक्सर पूछे जाने वाले प्रश्न

व्यवहार में दोनों लेबल दिखाई देते हैं। विनिर्देश से व्युत्पन्न वर्ग इसे बनाते हैं। ब्लैक बॉक्स इस तकनीक में कोड से व्युत्पन्न क्लास का उपयोग किया गया है, जिससे यह व्हाइट बॉक्स तकनीक बन जाती है। विश्लेषण स्वयं समान है।

यह त्रुटि-प्रवण क्षेत्रों को बहुत कम परीक्षण मामलों के साथ कवर करता है। इसकी सीमाएँ वास्तविक हैं: सीमाओं को सटीक रूप से निर्धारित करना कठिन है, और संपूर्ण कार्यप्रवाह का कभी अभ्यास नहीं किया जाता है, इसलिए यह अन्य विधियों का प्रतिस्थापन करने के बजाय उनका पूरक है।

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

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

कृत्रिम बुद्धिमत्ता सहायक एक आवश्यकता को पढ़ते हैं और संभावित समतुल्यता वर्ग, सीमा मान और अनुपलब्ध अमान्य मामलों का प्रस्ताव देते हैं। परीक्षक अभी भी वास्तविक सीमाओं की पुष्टि करता है, क्योंकि गलत तरीके से अनुमानित सीमा एक विश्वसनीय लेकिन बेकार परीक्षण सेट प्रदान करती है।

गिटहब कोपिलॉट प्रॉम्प्ट या कोड में क्लास और एज दिखाई देने पर पैरामीटराइज्ड टेस्ट मेथड लिखता है। अनिर्दिष्ट व्यावसायिक सीमाएं परीक्षक द्वारा प्रदान की जानी चाहिए।

प्रत्येक संयोजन गुणात्मक रूप से बढ़ता है, इसलिए यह शायद ही कभी व्यावहारिक होता है। पहले प्रत्येक चर का अलग-अलग विश्लेषण करें, फिर युग्मवार या ऑर्थोगोनल सरणी जोखिम भरे संयोजनों का चयन।

केवल मान्य क्लासों का परीक्षण करें और उन्हें छोड़ देंping नकारात्मक परीक्षणजहां नियम अनन्य है, वहां समावेशी सीमा का उपयोग करना और आउटपुट चर को पूरी तरह से अनदेखा करना।

इस पोस्ट को संक्षेप में इस प्रकार लिखें: