Hi!
Ich bin gerade dabei einen UnitTest zu schreiben für eine Singleton Klasse. Ich möchte getInstance() aufrufen. Rufe diese Methode in meinem Testfall auf und hoffe das diese mir die Exception wirft. Tut sie auch, nur wird diese in dem try-catch block in meinem Testfall nicht aufgefangen.
Weil dies nicht so funktioniert wie erhofft, habe ich zum Testen die getIntance()-Methode stark vereinfacht:
Somit muss beim Aufruf dieser Methode in jedem Fall eine Exception geschmissen werden.
Mein Testfall sieht folgendermaßen aus:
Komischerweise funktioniert dies aber nicht.
In der Ausgabe in Eclipse für Unit-Tests gibt er mir aus, dass diese Exception geworfen wurde.
Ich verstehe nicht, weshalb dieser try-catch Block ignoriert wird.
Hoffe ihr könnt mir weiterhelfen.
mfg
jared.
Ich bin gerade dabei einen UnitTest zu schreiben für eine Singleton Klasse. Ich möchte getInstance() aufrufen. Rufe diese Methode in meinem Testfall auf und hoffe das diese mir die Exception wirft. Tut sie auch, nur wird diese in dem try-catch block in meinem Testfall nicht aufgefangen.
Weil dies nicht so funktioniert wie erhofft, habe ich zum Testen die getIntance()-Methode stark vereinfacht:
Java:
...
public static MyClass getInstance() throws IllegalArgumentException {
throws new IllegalArgumentException("Exception");
}
...
Somit muss beim Aufruf dieser Methode in jedem Fall eine Exception geschmissen werden.
Mein Testfall sieht folgendermaßen aus:
Java:
...
public void testFailGetInstance() {
MyClass test;
try {
test = MyClass.getInstance( );
fail("...");
}
catch(IllegalArgumentException exception) {
// this is ok
}
}
...
Komischerweise funktioniert dies aber nicht.
In der Ausgabe in Eclipse für Unit-Tests gibt er mir aus, dass diese Exception geworfen wurde.
Ich verstehe nicht, weshalb dieser try-catch Block ignoriert wird.
Hoffe ihr könnt mir weiterhelfen.
mfg
jared.