Hallo, ich hätte eine Frage bezüglich Junit und wie ich testen kann ob Exceptions geworfen werden.
Ich nehmen mal ein simples Beispiel.
wenn zahl ist gleich 0, dann eben eine Exception auf den Aufrufer werfen
Der code arbeitet soweit gut, doch ich verstehe die andere Variante des Testens nicht:
@Test(expected ArithmeticException) public void CheckForInput(){
et.checkInput(0);
}
hiervon verstehe ich leider nichts:
1) Was bedeutet dieses @Test? Muss ich da extra eine Klasse erstellen?
2) @Test(expected ArithmeticException) ; Wenn ich das hinschreibe, dann wird alles rot unterstrichen
Könnte mir einfach jemand kurz erklären wie es richtig gemacht wird und was welcher Teil des Codes macht?
Benutze Junit4 und eclipse 3.3.2
Ich nehmen mal ein simples Beispiel.
Code:
public void checkInput(int zahl) throws ArithmeticException{
if(zahl==0)
throw new ArithmeticException("ZERO");
Code:
ExceptionTest et=new ExceptionTest();
public void testCheckForInput(){
try{
et.checkInput(0);
fail("FAIL");
}catch(ArithmeticException ar){
}
}
Der code arbeitet soweit gut, doch ich verstehe die andere Variante des Testens nicht:
@Test(expected ArithmeticException) public void CheckForInput(){
et.checkInput(0);
}
hiervon verstehe ich leider nichts:
1) Was bedeutet dieses @Test? Muss ich da extra eine Klasse erstellen?
2) @Test(expected ArithmeticException) ; Wenn ich das hinschreibe, dann wird alles rot unterstrichen
Könnte mir einfach jemand kurz erklären wie es richtig gemacht wird und was welcher Teil des Codes macht?
Benutze Junit4 und eclipse 3.3.2