2010-03-01 18 views
18

आप कुछ वाक्यों में व्याख्या कर सकते हैं:जावा में यूनिट परीक्षण - यह क्या है?

  1. क्यों हम इसे की जरूरत है/क्यों वे हमारे जीवन को आसान बनाने?
  2. यूनिट-टेस्ट [जावा में सरल उदाहरण] कैसे करें?
  3. हमें उन्हें/परियोजनाओं के प्रकार की आवश्यकता क्यों नहीं है, हम यूनिट-परीक्षण को छोड़ सकते हैं?
  4. उपयोगी लिंक्स

उत्तर

13

हमें इसकी आवश्यकता क्यों है/क्यों वे हमारी ज़िंदगी को आसान बनाते हैं?

  • यह एक अनुबंध है कि यह पूरा करना चाहिए के रूप में सेवारत है, तो आप कोड का टुकड़ा (रों) परीक्षण किए जाने से अपेक्षित व्यवहार की जांच करने की अनुमति देता है।
  • यह आपको कार्यक्षमता (अनुबंध) को तोड़ने के बिना कोड को सुरक्षित रूप से फिर से कारक करने की अनुमति देता है।
  • यह आपको यह सुनिश्चित करने की अनुमति देता है कि बग को ठीक करने के बाद यूनिट परीक्षण को कार्यान्वित करके बग फिक्स्ड तय रहें।
  • यह decoupled कोड लिखने के तरीके के रूप में कार्य कर सकता है (यदि आपके कोड लिखते समय आपको दिमाग में परीक्षण हो रहा है)।

इकाई परीक्षण [जावा में सरल उदाहरण] कैसे करें?

विवरण के लिए JUnit वेबसाइट और JUnit cookbook देखें। जुनीट टेस्ट के मामलों को लिखने के लिए बहुत कुछ नहीं है। वास्तव में अच्छे परीक्षण मामलों के साथ आना वास्तविक कार्यान्वयन से निश्चित रूप से कठिन है।

हमें उन्हें/परियोजनाओं के प्रकार की आवश्यकता क्यों नहीं है, हम यूनिट-परीक्षण को छोड़ सकते हैं?

कक्षा में हर विधि का परीक्षण करने की कोशिश न करें, बल्कि कक्षा की कार्यक्षमता का परीक्षण करने पर ध्यान केंद्रित करें। उदाहरण के लिए बीन्स, आप गेटर्स और सेटर्स के लिए परीक्षण नहीं लिखेंगे ...

लिंक

JUnit - इकाई परीक्षण

EclEmma - परीक्षण कवरेज उपकरण

link text - इकाई परीक्षण करने के लिए विकिपीडिया लिंक

13
  1. रखता है जो आपकी सबूत है कि आवेदन वास्तव में अपेक्षित तरीके से काम करता है। आपको रिग्रेशन बग भी बहुत आसान लगेगा। परीक्षण आसान हो जाता है, क्योंकि आपको हर संभव आवेदन स्थिति से मैन्युअल रूप से जाना नहीं है। और आखिरकार, आपको संभवत: आपके कोड का मैन्युअल रूप से परीक्षण करने के बावजूद आप उन बगों को ढूंढ पाएंगे जिन्हें आपने अस्तित्व में नहीं बताया था।

  2. JUnit के लिए

    गूगल

  3. ईकाई परीक्षण हमेशा लिखा जाना चाहिए, के रूप में कहा, यह आपके सबूत है कि आवेदन अपेक्षित तरीके से काम करता है। कुछ चीजें परीक्षण करने के लिए कठिन नहीं हो सकती हैं या नहीं, उदाहरण के लिए एक ग्राफिकल यूजर इंटरफेस। इसका मतलब यह नहीं है कि जीयूआई का परीक्षण नहीं किया जाना चाहिए, इसका मतलब केवल आपको इसके लिए अन्य टूल्स का उपयोग करना चाहिए।

  4. देखें बिंदु 2.

+4

'यह आपका सबूत है कि एप्लिकेशन इरादे के रूप में काम करता है'। यह एक बहुत ही आम गलतफहमी है। वे सब साबित करते हैं कि एक विशेष 'इकाई' इरादे के रूप में काम करती है (आवेदन नहीं)। कई इकाइयों को एकीकृत करते समय भी एकीकरण बग के लिए गुंजाइश है जहां कई इकाइयों पर व्यवहार 100% सफलता वाले व्यक्तिगत इकाइयों के बावजूद अपेक्षित नहीं है। यह कहना नहीं है कि यूनिट परीक्षण स्वयं में अविश्वसनीय रूप से उपयोगी नहीं हैं। – Dolbz

+2

"google it" – EugeneP

+1

को छोड़कर अच्छा जवाब यदि आप यूनिट परीक्षण में स्थानांतरित करने जा रहे हैं, तो यह ढांचे के ढांचे को देखने के लायक भी है। जूनिट का उपयोग समीकरण का केवल एक हिस्सा है, अक्सर आप परीक्षा के लिए कुछ वर्गों के व्यवहार को पूर्व निर्धारित/अनुकरण करना चाहते हैं, उदाहरण के लिए एक कक्षा पर एक परीक्षण के लिए जो आमतौर पर एक वेब सेवा से बात करता है, आप वेबसर्वर को वास्तविक कॉल करने के बजाय, इच्छित परिणामों को वापस करने के लिए वेब सेवा का आकलन कर सकते हैं। इस क्वेशियन को देखें: http://stackoverflow.com/questions/22697/whats-the-best-mock-framework-for-java और http://mockito.org/ मॉकिटो के लिए, एक अच्छा मॉकिंग फ्रेमवर्क। – Mike

2

यह शायद, Unit Testing पर विकिपीडिया लेख को पढ़ने के काम है के रूप में इस के बारे में क्यों अपने सवालों के अधिकांश का जवाब देंगे। JUnit वेबसाइट में जावा यूनिट परीक्षण लिखने के लिए संसाधन हैं, जिनमें से Junit Cookbook शायद आपका पहला स्टॉप होना चाहिए।

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

  • अन्य लोगों के कोड JDK
  • गैर नियतात्मक कोड सहित,

JUnit केवल इकाई परीक्षण नहीं है: हालांकि, अगर आप परीक्षण से बचने के लिए प्रयास करना चाहिए जावा के लिए ढांचा उपलब्ध है, इसलिए आपको डाइविंग से पहले TestNG जैसे अन्य ढांचे का मूल्यांकन करना चाहिए।

  • के लिए वेब
  • SIPUnit एसआईपी
  • के लिए HTMLUnit
  • जीयूआई के लिए SwingUnit:

    "उच्च-स्तरीय" चौखटे के अलावा, आप भी इस तरह के रूप में विशिष्ट क्षेत्रों को कवर काफी कुछ परियोजनाओं, मिलेगा कोड

+0

मुझे लगता है कि यह ध्यान रखना महत्वपूर्ण है कि तकनीकी रूप से एक इकाई परीक्षण निर्धारित करता है कि किसी प्रोग्राम का कुछ छोटा हिस्सा (एक इकाई) ठीक से काम कर रहा है या नहीं। यहां सबसे ज्यादा लोग किस बारे में बात कर रहे हैं, और सामान्य आधुनिक उपयोग, एक स्वचालित इकाई परीक्षण है, जो निर्माण या मांग के हिस्से के रूप में चलता है। – Jason

1

hows और जावा में इकाई परीक्षण के whys पर सबसे अच्छा किताबों में से एक Pragmatic Unit Testing in Java with JUnit (एंडी हंट है & डेव थॉमस)

2

मैं क्या लिखा है | पहले से ही यहाँ प्रतिक्रियाओं में से कई में कवर किया जाता है, लेकिन मैंने सोचा कि मैं इस ऐड होगी ...

सबसे अच्छा लेख मैंने कभी जब उपयोग करने के लिए पर पढ़ें/नहीं करने के लिए यूनिट परीक्षण का उपयोग Steve Sanderson's blog पर था। यह एक उत्कृष्ट लेख है जो आपके कोड-बेस के विभिन्न हिस्सों (यानी 100% कवरेज के खिलाफ एक आकर्षक तर्क)

+0

@ डॉल्बज़ मैं इसे देख लूंगा। धन्यवाद। – EugeneP

1

यह कैसे कैसे अपने प्रोग्रामिंग होना चाहिए:

  • कार्यान्वयन एक इंटरफेस (जरूरी नहीं कि एक जावा इंटरफ़ेस पर निर्णय लें, लेकिन कैसे विधि हर कोई
  • करने की तरह दिखता है एक परीक्षण लिखें
  • कोड
0

यह नाम से पता चलता है है के रूप में, इसके लिए परीक्षा है हमारे कार्यक्रम में हमारी इकाइयां। उदाहरण के लिए, यदि आपके पास एक विधि है जो दो पूर्णांकों का सारांश देता है, तो आप यह देखने के लिए दो नंबरों के साथ परीक्षण करेंगे कि यह सही तरीके से काम करता है या नहीं। उदाहरण के लिए, 2 + 2 के लिए, यह 4 देता है।

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

मेरे पास एक्लिप्स में जावा यूनिट परीक्षण लिखने के लिए एक उदाहरण के रूप में चरणबद्ध प्रक्रिया है। कृपया "How To Write Unite Tests" देखें।

मुझे उम्मीद है कि यह मदद करता है।

संबंधित मुद्दे