JUnit में कैसे जाँचें कि कोई मेथड कोई विशिष्ट अपवाद फेंकता है?
सभी को नमस्ते! मैंने अभी Java सीखना शुरू किया है और JUnit 4 के साथ यूनिट टेस्ट लिख रहा हूँ। मेरे पास एक मेथड है जो गलत इनपुट डेटा पर IllegalArgumentException फेंकना चाहिए। उदाहरण के लिए, ऐसा मेथड:
```java
public int divide(int a, int b) {
if (b == 0) {
throw new IllegalArgumentException("भाजक शून्य नहीं हो सकता");
}
return a / b;
}
```
मैं एक टेस्ट लिखना चाहता हूँ जो जाँचे कि b = 0 पास करने पर यह अपवाद फेंका जाता है। मैंने ऐसा करने की कोशिश की:
```java
@Test
public void testDivideByZero() {
Calculator calc = new Calculator();
calc.divide(10, 0); // अपवाद की उम्मीद है, लेकिन टेस्ट त्रुटि के साथ फेल हो जाता है
}
```
लेकिन टेस्ट बस अपवाद के साथ फेल हो जाता है, और JUnit इसे टेस्ट त्रुटि मानता है। मैंने सुना है कि @Test एनोटेशन में कोई `expected` पैरामीटर होता है और कुछ नियम भी हैं। कृपया बताएँ कि ऐसा टेस्ट सही तरीके से कैसे लिखें? यह महत्वपूर्ण है कि टेस्ट हरा हो जब अपवाद फेंका जाए, और लाल हो जब अपवाद न फेंका जाए।