दिलचस्प पोस्ट
SQL सर्वर में काम करने के लिए आप वाइल्डकार्ड के पूर्ण-पाठ खोजों को कैसे प्राप्त कर सकते हैं? php strtotime "पिछले सोमवार" यदि आज सोमवार है? जावा में जोड़े या 2-ट्यूपल का उपयोग करना पायथन: दो पूर्ण पथों की तुलना से संबंधित मार्ग प्राप्त करें जावा डिफ़ॉल्ट कन्स्ट्रक्टर नियमित अभिव्यक्ति के साथ आप केवल वैध रोमन अंक कैसे मेल करते हैं? फेसबुक एपीआई – फेसबुक एपीआई (उपयोगकर्ता को "अनुमति दें" को आवेदन की आवश्यकता के बिना) के माध्यम से मैं फेसबुक उपयोगकर्ता की प्रोफ़ाइल छवि कैसे प्राप्त करूं? Google Alerts API? विंडोज़ फॉर्म से यूआरएल खोलें PHP 5.3.0 में, फंक्शन "उपयोग" पहचानकर्ता क्या है? Windows में पाथ परिवेश चर को निर्देशिका जोड़ना nth कुरूप संख्या आप स्ट्रिंग के भीतर स्ट्रिंग की घटनाओं को कैसे गिना जाएंगे? सी + +: लाँगजम्प और सेटजेम्प का उपयोग करने के लिए सुरक्षित? एंटीटी फ्रेमवर्क 6 में मल्टी-एसिंक?

कैसे जूनिट परीक्षण उपकरण के साथ शून्य विधि का परीक्षण करने के लिए?

मैं सिर्फ एक विधि void followlink(obj page,obj link) को लागू करने के लिए होता है जो केवल पेज और कतार में लिंक जोड़ता है मैंने इस तरह की विधि का परीक्षण करने में असफल प्रयास किए हैं I

मैं चाहता हूं कि सभी परीक्षण करना है कि कतार में पृष्ठ और पश्च लिंक विधि से प्राप्त लिंक शामिल है। मेरी परीक्षा कक्षा पहले से ही TestCase विस्तार करती है तो ऐसी विधि का परीक्षण करने का सबसे अच्छा तरीका क्या है?

वेब के समाधान से एकत्रित समाधान "कैसे जूनिट परीक्षण उपकरण के साथ शून्य विधि का परीक्षण करने के लिए?"

JUnit एफएक्यू के परीक्षण के तरीकों पर एक खंड है जो void वापस आते हैं। आपके मामले में, आप नामित विधि के एक साइड इफेक्ट का परीक्षण करना चाहते हैं।

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

 @Test public void testCollectionAdd() { Collection collection = new ArrayList(); assertEquals(0, collection.size()); collection.add("itemA"); assertEquals(1, collection.size()); collection.add("itemB"); assertEquals(2, collection.size()); } 

यदि आप अपनी पद्धति को कॉल करने से पहले और बाद में कतार के आकार का परीक्षण कर सकते हैं, तो ऐसा कुछ:

 int size = queue.length(); followLink(page, link); assertEquals(size+1, queue.length()); // or maybe size+2? 

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

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

वह स्वयं " queue.length () " साइड इफेक्ट टेस्ट काम की सुविधा देता है।

लेकिन मैं आगे जाता हूं: वास्तव में, आपको यह जांचने पर विचार करना चाहिए कि आपकी पद्धति ने सही पृष्ठ और आपकी कतार में लिंक डाला है। इसके लिए ब्योरे के बारे में अधिक जानकारी की आवश्यकता है कि आप कैसे (और संयोजन) पेज और लिंक का प्रतिनिधित्व कर रहे हैं

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

तो – विधि की कॉल के बाद की कतार के बाद जांचें, यदि विधि के पास किए गए मान कतार में जोड़े जाते हैं। इसके लिए आपको कतार तक पहुंच की आवश्यकता है (जैसे कुछ मिलते हैं)

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

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

  1. नीचे दिए गए कार्यक्रम के अनुसार क्यू / संग्रह के आकार का उपयोग करके सत्यापित करें: (जैसा कि पैट्रिक द्वारा बताया गया है)

     @Test public void testfollowlinkAdd() { int size = queue.length(); queue.add(pageLink); //Considering an Object of PageLink Assert.assertTrue(size+1, queue.length()); } 

या

  1. MockObjects का उपयोग करें मॉकिटो जैसी फ़्रेमवर्क यहां उपयोगी हो सकते हैं।