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