सॉफ़्टवेयर परीक्षण की बुनियाद

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

सॉफ़्टवेयर परीक्षण क्यों ज़रूरी है?

डेवलपर अनजाने में गलतियाँ, दोष या बग जोड़ सकते हैं। आज का सॉफ़्टवेयर जटिल है। गलत समझ के कारण तर्क और कोड में गड़बड़ी आ सकती है।

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

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

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

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

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

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

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

वास्तव में किस चीज़ का परीक्षण करना चाहिए?

परियोजना की आवश्यकताएँ और वह वास्तविक परिस्थिति समझें जिसमें सॉफ़्टवेयर का इस्तेमाल होगा। इससे तय करना आसान होगा कि क्या जाँचना है और कौन सी परीक्षण रणनीति अपनानी है।

What Has to Be Tested?What Has toBe Tested?GUIAccessibilityDesignEfficiencyModularityCodeUserFriendlinessSecurity
आरेख को पूरे आकार में खोलें

वास्तव में किस चीज़ का परीक्षण करना चाहिए?

सॉफ़्टवेयर का परीक्षण कब किया जाता है?

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

कितनी बार परीक्षण करना चाहिए?

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

Continuous Software Testing CycleSoftwareTestingMeasureAnalyzeTestOptimizeRepeat
आरेख को पूरे आकार में खोलें

कितनी बार परीक्षण करना चाहिए?

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

परीक्षण मानक ग्राहकों और सॉफ़्टवेयर बनाने वालों, दोनों के लिए अहम हैं। ग्राहक सॉफ़्टवेयर पर पैसा लगाते हैं और चाहते हैं कि उसकी गुणवत्ता खरीद को उचित ठहराए।

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

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

कुछ मानक परीक्षण को अधिक व्यापक आवश्यकताओं का हिस्सा मानते हैं और कुछ विशेष रूप से परीक्षण का मार्गदर्शन करते हैं। दोनों प्रकार के मानक आपके काम में मदद कर सकते हैं।

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

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

  1. नियंत्रण की क्षमता से आप परीक्षण की प्रक्रिया को अपने नियंत्रण में रखकर बेहतर बना सकते हैं।
  2. अवलोकन की क्षमता के लिए ज़रूरी है कि व्यवहार और नतीजे पर असर डालने वाले कारक दिखाई दें, ताकि उनकी जाँच हो सके।
  3. उपलब्धता का अर्थ है कि परीक्षण करने के लिए आप प्रणाली तक पहुँच सकते हैं।
  4. एकसमान डिज़ाइन, समझने में आसान सुविधाएँ और सरल कोडिंग तरीके परीक्षण की जटिलता कम करते हैं। अधिक जटिल सॉफ़्टवेयर को जाँचना मुश्किल होता है।
  5. स्थिरता से परीक्षण आसान होता है। डिज़ाइन बार बार बदलने से परीक्षण बाधित हो सकता है।
  6. परीक्षण की कार्यकुशलता बहुत हद तक इस बात पर निर्भर है कि सॉफ़्टवेयर के बारे में कितनी जानकारी उपलब्ध है।

परीक्षणयोग्यता और दोषों के बीच इन संबंधों को ध्यान में रखें।

  1. अधिक परीक्षणयोग्यता से बेहतर परीक्षण करने और दोष कम करने में मदद मिलती है।
  2. कम परीक्षणयोग्यता से परीक्षण की गुणवत्ता घट सकती है और प्रणाली में अधिक दोष रह सकते हैं।

सॉफ़्टवेयर का सत्यापन और मान्यकरण

सत्यापन और मान्यकरण दो अलग तरह की जाँच हैं। मान्यकरण यह पूछता है कि क्या आप सही प्रणाली बना रहे हैं। क्या वह ग्राहक की आवश्यकताएँ पूरी करती है?

सत्यापन यह पूछता है कि क्या आप प्रणाली सही ढंग से बना रहे हैं। इसका ध्यान इंजीनियरिंग की गुणवत्ता और ज़रूरी मानकों के पालन पर रहता है।

मान्यकरण जाँचता है कि विनिर्देश ग्राहक की ज़रूरतें पूरी करते हैं या नहीं। सत्यापन जाँचता है कि विकास संगठन के सॉफ़्टवेयर गुणवत्ता मानकों और इंजीनियरिंग कार्यप्रथाओं के अनुसार हो रहा है या नहीं।

Software Verification and Software ValidationRequirementSpecification(Verification)User AcceptanceTesting (UAT)Functional Design(Verification)Functional Testing(Validation)Internal SystemDesign(Verification)Integration Testing(Validation)Code and Unit Testing(Verification and Validation)
आरेख को पूरे आकार में खोलें

सॉफ़्टवेयर का सत्यापन और मान्यकरण

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

परीक्षक सॉफ़्टवेयर की गुणवत्ता के अलग पहलुओं की जाँच के लिए सत्यापन और मान्यकरण (V&V) का इस्तेमाल करते हैं।

सॉफ़्टवेयर परीक्षण और डीबगिंग

परीक्षण और डीबगिंग के उद्देश्य अलग हैं। परीक्षण दोष खोजता है। दोष मिलने के बाद डीबगिंग करके उसका कारण दूर किया जाता है।

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

किसी दोष को ठीक करने से पहले उसके संभावित कारण समझें। पर्याप्त जानकारी के बिना डीबगिंग करने से किसी जुड़े मॉड्यूल में दूसरा दोष आ सकता है। बिना योजना के बदलाव आज़माने से बचें। दोष ठीक करने के बाद मॉड्यूल परीक्षक को लौटाएँ ताकि वह उसकी अच्छी तरह जाँच करे।

  1. परीक्षण दोष उजागर करता है। डीबगिंग उनके कारण ढूँढ़कर ठीक करती है।
  2. परीक्षण विकास का अहम हिस्सा है। डीबगिंग परीक्षण से सामने आए दोषों को दूर करने में मदद करती है।
  3. परीक्षण विकास में जल्दी शुरू होता है। डीबगिंग तब शुरू होती है जब दोषों की सूचना मिलती है।
  4. परीक्षण में सत्यापन और मान्यकरण (V&V) शामिल हैं। डीबगिंग किसी दोष के कारण की जाँच करके उसे दूर करती है।

दोष क्या है?

दोष सॉफ़्टवेयर की आवश्यकताओं के विनिर्देश से विचलन है। कोड या डिज़ाइन में दोष हो सकता है और प्रोग्राम चलने पर गलत नतीजा दे सकता है।

  1. बहुत से दोषों वाले कोड को अक्सर बग वाला कोड कहा जाता है।
  2. बग रिपोर्ट दोष की प्रकृति बताती है।
  3. बग ट्रैकिंग उपकरण प्रणाली में दोषों का पता रखने में मदद करते हैं।
  4. एक परीक्षण तकनीक में जानबूझकर कोड में दोष डाले जाते हैं। फिर नतीजा देखकर जाँचा जाता है कि प्रणाली उन समस्याओं पर अपेक्षा के अनुसार प्रतिक्रिया देती है या नहीं।

Defect Prevention and DetectionRequirement StudyDesignImplementationTestRelease andMaintenanceDefectPreventionDefectDetection
आरेख को पूरे आकार में खोलें

दोष क्या है?

गंभीरता और प्राथमिकता क्या हैं?

गंभीरता बताती है कि दोष प्रणाली को कितना प्रभावित करता है। प्रभाव के आधार पर दोषों की श्रेणियाँ इस प्रकार हैं।

  1. अत्यंत गंभीर दोष में प्रणाली ठप होने या डेटा बिगड़ने से अनुप्रयोग ठीक तरह काम नहीं करता। उपयोगकर्ता आगे नहीं बढ़ सकता।
  2. बड़े दोष में प्रणाली ठप हो सकती है, लेकिन उपयोगकर्ता अतिरिक्त प्रशिक्षण के बिना किसी और तरीके से अपेक्षित नतीजा हासिल कर सकता है। यह दोष अत्यंत गंभीर दोष से कम गंभीर है।
  3. मध्यम दोष होने पर प्रणाली काम करती रहती है, लेकिन गलत या एक दूसरे से मेल न खाने वाले नतीजे देती है।
  4. मामूली दोष से न प्रणाली ठप होती है और न इस्तेमाल में दिक्कत आती है। इसे आसानी से ठीक किया जा सकता है।
  5. दृश्य दोष का असर प्रणाली के दिखने के तरीके पर पड़ता है।

दोष रिपोर्ट में गंभीरता और प्राथमिकता, दोनों दर्ज होती हैं। प्राथमिकता डेवलपर को बताती है कि दोष किस क्रम में ठीक करने हैं।

  1. कम प्राथमिकता वाले दोष को ज़्यादा प्राथमिकता वाले दोषों के बाद ठीक करें। इस पर तुरंत ध्यान देने की ज़रूरत नहीं है।
  2. मध्यम प्राथमिकता वाले दोष को ज़्यादा प्राथमिकता वाले दोषों के ठीक होने के तुरंत बाद हल करें।
  3. उच्च प्राथमिकता वाले दोष पर तुरंत ध्यान दें और उसे यथाशीघ्र ठीक करें।
यह तय करने के लिए कि कार्रवाई कितनी ज़रूरी है, रिपोर्ट में दर्ज गंभीरता और प्राथमिकता को साथ देखकर निर्णय लें।

Severity and PriorityNoncriticalHigh SeverityLow PriorityCriticalHigh SeverityHigh PriorityLowLow SeverityLow PriorityHighLow SeverityHigh PrioritySeverityPriority
आरेख को पूरे आकार में खोलें

गंभीरता और प्राथमिकता क्या हैं?

  1. उच्च प्राथमिकता और उच्च गंभीरता में किसी बुनियादी काम की समस्या उपयोगकर्ता को प्रणाली इस्तेमाल करने से रोकती है। इसे तुरंत ठीक करें।
  2. उच्च प्राथमिकता और कम गंभीरता का उदाहरण कंपनी का गलत लिखा नाम या लोगो की समस्या है। इससे कामकाज पर कम असर पड़ता है, फिर भी इसे तुरंत ठीक करना ज़रूरी है।
  3. उच्च गंभीरता और कम प्राथमिकता में कोई बड़ा दोष ऐसे मॉड्यूल को प्रभावित करता है जिसकी उपयोगकर्ता को तुरंत ज़रूरत नहीं है। इसे बाद में ठीक किया जा सकता है।
  4. कम प्राथमिकता और कम गंभीरता में कामकाज को प्रभावित न करने वाले दृश्य दोष आम तौर पर सबसे बाद में ठीक होते हैं।




आपका सॉफ़्टवेयर परीक्षण प्रशिक्षण

विषय सूची

प्रमाणन के लिए पंजीकरण करें

हम गारंटी देते हैं कि अपने निःशुल्क ऑनलाइन प्रशिक्षण के साथ आप सॉफ़्टवेयर परीक्षण प्रमाणन परीक्षा पास करेंगे!

  1. 01

    ऑनलाइन पंजीकरण करें

    मान्यता प्राप्त प्रमाणन चुनें और अपना पंजीकरण पूरा करें।

  2. 02

    अपना एक्सेस कोड पाएँ

    आपका निजी परीक्षा एक्सेस कोड तुरंत ईमेल से भेजा जाता है।

  3. 03

    तैयारी करें और परीक्षा दें

    मुफ़्त प्रशिक्षण से पढ़ें और 50 बहुविकल्पीय सवालों के जवाब ऑनलाइन दें।

  4. 04

    आजीवन मान्य प्रमाणन पाएँ

    दुनिया भर में मान्य प्रमाणपत्र और ऐसा डिजिटल बैज पाएँ जिसकी पुष्टि की जा सके।

Accredited Software Test Manager Certification™ प्रमाणपत्र का नमूना
प्रमाणन के लिए पंजीकरण करें

आपका निःशुल्क प्रीमियम ऑनलाइन प्रशिक्षण

Software Testing Revealed का दूसरा संस्करण आपके लिए तैयार है।

हमने सभी प्रमुख उद्योगों के प्रतिष्ठित कारोबारी और टीम लीडरों, सॉफ़्टवेयर परीक्षण कोचों, मार्गदर्शकों, विशेषज्ञों और जानेमाने पेशेवरों के साथ मिलकर आपका प्रशिक्षण तैयार किया है। International Software Test Institute™ पर आने वाला हर व्यक्ति इसका उपयोग कर सकता है। प्रशिक्षण सामग्री इन अनुभागों में मिलेगी। आपकी मुफ़्त सॉफ़्टवेयर परीक्षण पुस्तक और आपका मुफ़्त प्रीमियम सॉफ़्टवेयर परीक्षण प्रशिक्षण दोनों शीर्ष मेनू में हैं।

यह सामग्री International Software Test Institute™ की बौद्धिक संपदा है और कॉपीराइट से सुरक्षित है। हम इसे सभी के लिए निःशुल्क उपलब्ध कराते हैं, क्योंकि अपना अनुभव साझा करने से सॉफ़्टवेयर परीक्षण पेशेवरों को मदद मिलती है और इस क्षेत्र का विकास होता है।

आपकी प्रमाणन परीक्षा में बहुविकल्पीय प्रश्न आते हैं। ऑनलाइन प्रशिक्षण से परीक्षा पास करने और सॉफ़्टवेयर परीक्षण प्रमाणन पाने के लिए ज़रूरी ज्ञान हासिल करें।

हम गारंटी देते हैं कि अपने निःशुल्क प्रीमियम ऑनलाइन प्रशिक्षण के साथ आप सॉफ़्टवेयर परीक्षण प्रमाणन परीक्षा पास करेंगे!