मॉडल आधारित परीक्षण क्या है?
मॉडल आधारित परीक्षण क्या है?
मॉडल-आधारित परीक्षण एक सॉफ्टवेयर परीक्षण तकनीक है, जिसमें परीक्षण के तहत सॉफ्टवेयर के रन टाइम व्यवहार की जांच मॉडल द्वारा की गई भविष्यवाणियों के आधार पर की जाती है। मॉडल सिस्टम के व्यवहार का विवरण होता है। व्यवहार को इनपुट अनुक्रमों, क्रियाओं, स्थितियों, आउटपुट और इनपुट से आउटपुट तक डेटा के प्रवाह के संदर्भ में वर्णित किया जा सकता है। यह व्यावहारिक रूप से समझने योग्य होना चाहिए और इसका पुन: उपयोग किया जा सकता है; साझा करने योग्य में परीक्षण के तहत सिस्टम का सटीक विवरण होना चाहिए।
कई मॉडल उपलब्ध हैं, और यह सिस्टम व्यवहार के विभिन्न पहलुओं का वर्णन करता है। मॉडल के उदाहरण हैं:
- डाटा प्रवाह
- बहाव को काबू करें
- निर्भरता ग्राफ़
- निर्णय सारणी
- राज्य संक्रमण मशीनें
मॉडल-आधारित परीक्षण बताता है कि कोई सिस्टम किसी कार्रवाई (मॉडल द्वारा निर्धारित) के जवाब में कैसे व्यवहार करता है। कार्रवाई की आपूर्ति करें, और देखें कि क्या सिस्टम अपेक्षा के अनुसार प्रतिक्रिया करता है।
यह किसी सिस्टम को मान्य करने का एक हल्का-फुल्का औपचारिक तरीका है। इस परीक्षण को हार्डवेयर और सॉफ्टवेयर परीक्षण दोनों पर लागू किया जा सकता है।
मॉडल आधारित परीक्षण उदाहरण
उपरोक्त मॉडल नोटपैड में कविता लिखने के सरलीकृत दृष्टिकोण और प्रत्येक चरण से संबंधित संभावित क्रियाओं को समझाता है। प्रत्येक क्रिया के लिए (जैसे शुरू करना, कविता दर्ज करना, सहेजना), परीक्षण का मामला उत्पन्न किया जा सकता है, और आउटपुट को सत्यापित किया जा सकता है।
एमबीटी के प्रकार
मॉडल आधारित परीक्षण ढांचे दो प्रकार के होते हैं-
- ऑफ़लाइन / प्राथमिकता: परीक्षण सूट को निष्पादित करने से पहले उसका निर्माण। एक परीक्षण सूट कुछ और नहीं बल्कि परीक्षण मामलों का एक संग्रह है।
- ऑनलाइन / ऑन-द-फ्लाई: परीक्षण निष्पादन के दौरान टेस्ट सूट का निर्माण
परीक्षण में विभिन्न मॉडल
एमबीटी को समझने के लिए नीचे बताए गए कुछ मॉडलों को समझना ज़रूरी है। आइए एक-एक करके उन पर नज़र डालें:
परिमित राज्य मशीनें
यह मॉडल परीक्षकों को चयनित इनपुट के आधार पर परिणाम का आकलन करने में मदद करता है। इनपुट के विभिन्न संयोजनों के परिणामस्वरूप सिस्टम की संगत स्थिति प्राप्त हो सकती है।
सिस्टम की एक विशिष्ट स्थिति और वर्तमान स्थिति होगी, जो परीक्षकों द्वारा दिए गए इनपुट के एक सेट द्वारा नियंत्रित होगी।
उदाहरण पर विचार करें-
एक ऐसी प्रणाली है जो कर्मचारियों को एप्लिकेशन में लॉग-इन करने की अनुमति देती है। अब, कर्मचारी की वर्तमान स्थिति "आउट" है, और सिस्टम में साइन-इन करने के बाद यह "इन" हो जाती है। "इन" स्थिति के तहत, कोई कर्मचारी सिस्टम में दस्तावेज़ देख सकता है, प्रिंट कर सकता है और स्कैन कर सकता है।
राज्य चार्ट
यह परिमित राज्य मशीन का एक विस्तार है और इसका उपयोग जटिल और वास्तविक समय प्रणालियों के लिए किया जा सकता है। स्टेटचार्ट का उपयोग सिस्टम के विभिन्न व्यवहारों का वर्णन करने के लिए किया जाता है। इसमें निश्चित संख्या में अवस्थाएँ होती हैं। सिस्टम के व्यवहार का विश्लेषण किया जाता है और प्रत्येक अवस्था के लिए घटनाओं के रूप में दर्शाया जाता है।
उदाहरण के लिए -
दोष प्रबंधन उपकरण में दोषों को नया के रूप में स्थिति के साथ उठाया जाता है। एक बार जब इसे डेवलपर्स द्वारा ठीक कर दिया जाता है, तो इसे स्थिति को ठीक किया जाना चाहिए। यदि कोई दोष ठीक नहीं होता है, तो स्थिति को फिर से खोलें में बदलें। राज्य चार्ट को इस तरह से डिज़ाइन किया जाना चाहिए कि यह प्रत्येक राज्य के लिए एक घटना के लिए कॉल करे।
एकीकृत मॉडलिंग भाषा (UML)
एकीकृत मॉडलिंग भाषा (यूएमएल) एक मानकीकृत सामान्य प्रयोजन मॉडलिंग भाषा है। UML में दृश्य मॉडल बनाने के लिए ग्राफिक संकेतन तकनीकों का एक सेट शामिल है जो सिस्टम के बहुत जटिल व्यवहार का वर्णन कर सकता है।
यूएमएल में निम्नलिखित संकेतन हैं:
- क्रियाएँ
- अभिनेता
- व्यापार प्रक्रिया
- कॉम्पोनेंट्स
- प्रोग्रामिंग भाषा
मॉडल आधारित परीक्षण की चुनौतियाँ
प्रत्येक संगठन में एमबीटी की तैनाती के लिए स्पष्ट रूप से उच्च मात्रा में निवेश और प्रयास की आवश्यकता होती है। एमबीटी की निम्नलिखित कमियाँ हैं सॉफ्टवेयर इंजीनियरिंग.
- परीक्षकों में आवश्यक कौशल
- सीखने का समय अधिक होगा
- मॉडल को समझना कठिन
मॉडल परीक्षण के लाभ
एमबीटी के लाभ निम्नलिखित हैं:
- आसान परीक्षण केस/सूट रखरखाव
- लागत में कमी
- बेहतर परीक्षण कवरेज
- n संख्या की मशीनों पर विभिन्न परीक्षण चला सकते हैं
- शीघ्र दोष का पता लगाना
- दोषों की संख्या में वृद्धि
- समय बचत
- परीक्षक की नौकरी की संतुष्टि में सुधार
निष्कर्ष
परीक्षक अपने परीक्षण के दौरान वैसे भी मानसिक मॉडल बनाते हैं। उन मानसिक मॉडलों को कागज़ पर मॉडल में बदला जा सकता है। इससे परीक्षकों को पठनीयता और पुनः-उपयोगिता प्राप्त करने में मदद मिलती है।
मॉडल आधारित परीक्षण एक नया दृष्टिकोण है सॉफ्टवेयर परिक्षणसॉफ्टवेयर परीक्षण का विकास नीचे दर्शाया गया है –