JUnit 5 Java: पूर्ण गाइड उदाहरणों के साथ

शुरुआती लोगों के लिए ऑनलाइन Python प्रशिक्षक

Python आसानी से सीखें बिना सिद्धांत के बोझ के। स्वचालित जांच के साथ व्यावहारिक कार्य हल करें और ब्राउज़र में सीधे कोड लिखें।

पाठ्यक्रम शुरू करें

JUnit 5 का परिचय

JUnit 5 Java भाषा में यूनिट टेस्टिंग (unit testing) के लिए एक आधुनिक फ्रेमवर्क है। यह लोकप्रिय JUnit 4 का विकसित रूप है और Java इकोसिस्टम में ऑटोमेटेड टेस्ट लिखने के लिए डी-फैक्टो स्टैंडर्ड माना जाता है। JUnit 5 सिर्फ एक अपडेट नहीं है, बल्कि पूरी तरह से नया आर्किटेक्चर है जो तीन उप-प्रोजेक्ट्स से मिलकर बना है: JUnit Platform (टेस्ट चलाना), JUnit Jupiter (नया प्रोग्रामिंग मॉडल और एक्सटेंशन) और JUnit Vintage (JUnit 3/4 के साथ बैकवर्ड कम्पैटिबिलिटी)।

JUnit 5 की आवश्यकता क्यों है? आधुनिक डेवलपमेंट (खासकर TDD — Test-Driven Development में) टेस्टिंग कोई विकल्प नहीं, बल्कि एक अनिवार्य चरण है। JUnit 5 आपको ये सुविधाएँ देता है:

  • कोड की ऑटोमेटेड जाँच: एक ही कमांड से सैकड़ों टेस्ट चलाएँ।
  • रीग्रेशन रिलायबिलिटी: सुनिश्चित करें कि नया कोड पुरानी फंक्शनैलिटी को नहीं तोड़ता।
  • कोड डिज़ाइन में सुधार: टेस्ट करने योग्य कोड अक्सर अधिक मॉड्यूलर और लूज़ली कपल्ड होता है।
  • व्यवहार का दस्तावेज़ीकरण: टेस्ट लिविंग डॉक्यूमेंटेशन का काम करते हैं जो बताते हैं कि क्लास या मेथड कैसे काम करना चाहिए।
  • CI/CD में इंटीग्रेशन: JUnit 5 को Maven, Gradle, Jenkins, GitHub Actions में आसानी से एम्बेड किया जा सकता है।

JUnit 4 की तुलना में JUnit 5 के मुख्य नए फीचर्स: नई पीढ़ी के एनोटेशन (@Test, @ParameterizedTest, @Nested), शक्तिशाली एक्सटेंशन सिस्टम (Extensions), लैम्ब्डा एक्सप्रेशन और स्ट्रीम API का सपोर्ट, साथ ही पैरामीटराइज्ड और डायनामिक टेस्ट का बिल्ट-इन सपोर्ट।

JUnit 5 की स्थापना (Installation)

चूँकि Java एक कम्पाइल्ड भाषा है, इसकी स्थापना डिपेंडेंसी मैनेजर (Maven या Gradle) के माध्यम से की जाती है। JUnit 5 pip या npm के ज़रिए इंस्टॉल नहीं होता। नीचे दो सबसे लोकप्रिय बिल्ड सिस्टम के लिए निर्देश दिए गए हैं।

Maven (pom.xml) के माध्यम से स्थापना

अपने pom.xml फ़ाइल में निम्नलिखित डिपेंडेंसी जोड़ें। नवीनतम स्थिर संस्करण (लेखन के समय — 5.11.0) का उपयोग करें, अपडेट के लिए MVNRepository देखें।

<dependencies>
    <!-- JUnit Jupiter का मुख्य मॉड्यूल (API, Engine और पैरामीटराइजेशन शामिल है) -->
    <dependency>
        <groupId>org.junit.jupiter</groupId>
        <artifactId>junit-jupiter</artifactId>
        <version>5.11.0</version>
        <scope>test</scope>
    </dependency>
    <!-- (वैकल्पिक) JUnit 4 के साथ संगतता के लिए -->
    <dependency>
        <groupId>org.junit.vintage</groupId>
        <artifactId>junit-vintage-engine</artifactId>
        <version>5.11.0</version>
        <scope>test</scope>
    </dependency>
</dependencies>

Gradle (build.gradle) के माध्यम से स्थापना

dependencies सेक्शन में जोड़ें:

dependencies {
    testImplementation 'org.junit.jupiter:junit-jupiter:5.11.0'
    // (वैकल्पिक) JUnit 4 के लिए
    testImplementation 'org.junit.vintage:junit-vintage-engine:5.11.0'
}

test {
    useJUnitPlatform() // JUnit 5 को सक्षम करने के लिए अनिवार्य
}

बिना बिल्ड सिस्टम के स्थापना (Plain Java)

यदि आप Maven/Gradle का उपयोग नहीं करते हैं, तो आधिकारिक रिपॉजिटरी से JAR फ़ाइलें डाउनलोड करें और अपने प्रोजेक्ट के classpath में जोड़ें। हालाँकि, वास्तविक प्रोजेक्ट्स के लिए यह अत्यधिक अनुशंसित नहीं है।

त्वरित शुरुआत: JUnit 5 पर पहला टेस्ट

एक सरल Calculator क्लास बनाएँ और उसके लिए टेस्ट लिखें।

1. टेस्ट करने के लिए क्लास (Calculator.java):

public class Calculator {
    public int add(int a, int b) {
        return a + b;
    }

    public int divide(int a, int b) {
        if (b == 0) {
            throw new IllegalArgumen                    

अनुशंसाएँ