टेस्ट केस डिज़ाइन उदाहरणों के साथ सॉफ़्टवेयर परीक्षण तकनीकें

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

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

  • मूल सिद्धांत: सॉफ्टवेयर परीक्षण तकनीकें न्यूनतम प्रयास से उच्च कवरेज प्राप्त करने के लिए इनपुट डोमेन से परीक्षण मामलों का चयन करती हैं, तथा त्रुटि-प्रवण क्षेत्रों पर ध्यान केंद्रित करती हैं।
  • सीमा मूल्य विश्लेषण: सीमाओं (न्यूनतम, अधिकतम, ठीक अंदर/बाहर) का परीक्षण करें क्योंकि त्रुटियाँ वहाँ एकत्रित होती हैं, उदाहरण के लिए, इनपुट 1-10 के लिए, 0,1,2,9,10,11 को मान्य करें।
  • समतुल्य विभाजन: इनपुट को वैध/अवैध वर्गों में विभाजित करें (जैसे, <1, 1-10, 11-19, 20-30, >30), प्रत्येक वर्ग के लिए एक प्रतिनिधि का परीक्षण करें।
  • निर्णय तालिका परीक्षण: इनपुट संयोजनों को कारण-प्रभाव तालिकाओं में आउटपुट से मैप करें, सबमिट बटन को केवल तभी सक्षम करें जब सभी फ़ील्ड पूर्ण हों।
  • अवस्था संक्रमण: इनपुट के माध्यम से मॉडल अनुक्रमिक स्थिति में परिवर्तन (उदाहरण के लिए, लॉगिन प्रयास: सही पिन पहुंच प्रदान करता है; तीन गलत ब्लॉक खाता)।
  • त्रुटि अनुमान: संभावित दोषों को लक्षित करने के लिए अनुभव का लाभ उठाएं, तदर्थ परीक्षण मामलों के लिए ऐतिहासिक डेटा और सामान्य कमियों का उपयोग करें।

सॉफ्टवेयर परीक्षण तकनीकें

सॉफ्टवेयर परीक्षण तकनीक क्या है?

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

  • सीमा मूल्य विश्लेषण
  • समतुल्यता वर्ग विभाजन
  • निर्णय तालिका आधारित परीक्षण
  • अवस्था संक्रमण
  • त्रुटि अनुमान लगाना

👉 निःशुल्क लाइव सॉफ्टवेयर परीक्षण परियोजना के लिए नामांकन करें

सॉफ़्टवेयर परीक्षण तकनीकों के 7 सिद्धांत

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

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

एआई पारंपरिक सॉफ्टवेयर परीक्षण तकनीकों को कैसे बदल रहा है?

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

सॉफ्टवेयर परीक्षण तकनीकें

सीमा मूल्य विश्लेषण (बीवीए)

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

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

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

सीमा मूल्य विश्लेषण के लिए दिशानिर्देश

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

उदाहरण:

Input condition is valid between 1 to 10

Boundary values 0,1,2 and 9,10,11

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

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

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

उदाहरण:

इनपुट शर्तें निम्नलिखित के बीच मान्य हैं

 1 to 10 and 20 to 30

इसलिए, पाँच तुल्यता वर्ग हैं

--- to 0 (invalid)
1 to 10 (valid)
11 to 19 (invalid)
20 to 30 (valid)
31 to --- (invalid)

आप प्रत्येक वर्ग से मानों का चयन करते हैं, अर्थात,

-2, 3, 15, 25, 45

इसके बारे में और भी पढ़ें – सीमा मान विश्लेषण और समतुल्यता विभाजन परीक्षण

निर्णय तालिका आधारित परीक्षण

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

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

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

निर्णय तालिका बनाने के लिए निम्नलिखित चरण हैं:

  • पंक्तियों में इनपुट सूचीबद्ध करें
  • कॉलम में सभी नियम दर्ज करें
  • तालिका को इनपुट के विभिन्न संयोजनों से भरें
  • अंतिम पंक्ति में, इनपुट संयोजन के विरुद्ध आउटपुट को नोट करें।

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

निर्णय तालिका आधारित परीक्षण

अवस्था संक्रमण

स्टेट ट्रांज़िशन तकनीक में, इनपुट स्थितियों में परिवर्तन, परीक्षणाधीन एप्लिकेशन (AUT) की स्थिति को बदल देता है। यह परीक्षण तकनीक परीक्षक को AUT के व्यवहार का परीक्षण करने की अनुमति देती है। परीक्षक विभिन्न इनपुट स्थितियों को एक क्रम में दर्ज करके यह क्रिया कर सकता है। स्टेट ट्रांज़िशन तकनीक में, परीक्षण दल सिस्टम के व्यवहार का मूल्यांकन करने के लिए सकारात्मक और नकारात्मक दोनों इनपुट परीक्षण मान प्रदान करता है।

राज्य परिवर्तन के लिए दिशानिर्देश:

  • स्टेट ट्रांजिशन का उपयोग तब किया जाना चाहिए जब परीक्षण टीम इनपुट मानों के सीमित सेट के लिए एप्लिकेशन का परीक्षण कर रही हो।
  • टेस्ट केस डिजाइन तकनीक का उपयोग तब किया जाना चाहिए जब परीक्षण टीम परीक्षण के तहत अनुप्रयोग में होने वाली घटनाओं के अनुक्रम का परीक्षण करना चाहती हो।

उदाहरण:

निम्नलिखित उदाहरण में, उपयोगकर्ता तीन प्रयासों में एक मान्य पासवर्ड दर्ज करके सफलतापूर्वक लॉग इन कर सकता है। यदि उपयोगकर्ता पहले या दूसरे प्रयास में एक अमान्य पासवर्ड दर्ज करता है, तो उपयोगकर्ता को पासवर्ड पुनः दर्ज करने के लिए कहा जाएगा। जब उपयोगकर्ता गलत पासवर्ड दर्ज करता है 3rd समय पर कार्रवाई की जाएगी और खाता ब्लॉक कर दिया जाएगा।

राज्य संक्रमण आरेख

राज्य संक्रमण आरेख

इस आरेख में, जब उपयोगकर्ता सही पिन नंबर देता है, तो उसे एक्सेस स्वीकृत स्थिति में ले जाया जाता है। उपरोक्त आरेख के आधार पर निम्नलिखित तालिका बनाई गई है-

राज्य संक्रमण तालिका

सही पिन गलत पिन
एस१) प्रारंभ S5 S2
एस2) 1st करने का प्रयास S5 S3
एस3) 2nd करने का प्रयास S5 S4
एस4) 3rd करने का प्रयास S5 S6
S5) पहुँच प्रदान की गई - -
S6) खाता अवरुद्ध - -

ऊपर दी गई तालिका में, जब उपयोगकर्ता सही पिन दर्ज करता है, तो स्थिति एक्सेस दी गई स्थिति में बदल जाती है। और यदि उपयोगकर्ता गलत पासवर्ड दर्ज करता है, तो उसे अगली स्थिति में ले जाया जाता है। यदि वह वही 3 बार दोहराता है, तोrd कुछ समय बाद, वह खाता अवरुद्ध स्थिति में पहुंच जाएगा।

त्रुटि अनुमान लगाना

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

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

त्रुटि अनुमान हेतु दिशानिर्देश:

  • परीक्षण में समान अनुप्रयोगों के परीक्षण के पिछले अनुभव का उपयोग किया जाना चाहिए
  • परीक्षण के अंतर्गत प्रणाली की समझ
  • विशिष्ट कार्यान्वयन त्रुटियों का ज्ञान
  • पहले से संकटग्रस्त क्षेत्रों को याद रखें
  • ऐतिहासिक डेटा और परीक्षण परिणामों का मूल्यांकन करें

परीक्षण तकनीकों के लाभ और सीमाएँ

लाभ:

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

सीमाएँ:

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

सही परीक्षण तकनीक का चयन कैसे करें?

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

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

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

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

इसके चार प्रमुख प्रकार हैं: यूनिट परीक्षण, एकीकरण परीक्षण, सिस्टम परीक्षण और स्वीकृति परीक्षण। इनमें से प्रत्येक जटिलता के बढ़ते स्तर पर सॉफ़्टवेयर की कार्यक्षमता का सत्यापन करता है, और तैनाती से पहले विश्वसनीयता सुनिश्चित करता है।

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

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

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

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