Ich möchte eine Reihe von Systemintegrationstests für eine RMI-Client-Anwendung schreiben. Ich möchte den RMI-Server in JUnit 3.8.2 starten und diese Tests dann ausführen. Hat jemand das getan?Beste Praktiken für JUnit und RMI-Anwendungen, RMI-Registrierung
Ich bin mit so etwas wie dies in einem pojo mit Haupt:
import java.rmi.registry.*; .... //setup try { java.rmi.registry.LocateRegistry.createRegistry(1099); System.out.println("RMI registry ready."); this.StartMyServer(); // client set up MyClient m = null; m = (MyClient) Naming.lookup("//MyHost/MyServer", m); // tests here } catch (MyClientException me) { System.out.println("MyClient fall down go boom"); } catch (MyServerException me) { System.out.println("MyServer fall down go boom"); } catch (Exception e) { System.out.println("Exception starting RMI registry:"); }
Was ist der beste Weg, dies in einen JUnit-Test zu drehen, so dass die Registrierung nur einmal gestartet wird und die Tests nur ausgeführt, wenn die Registrierung läuft eigentlich an? Ich könnte es vermeiden, eine Test-Klasse mit einer Test-Methode mit dem ganzen Test-Code von dort zu haben, was ich selbst gemacht habe, bevor ich hierher gekommen bin.
Auch was sollte ich beachten, wenn ich meine Tests schreibe? Irgendwelche RMI-Testfehler?
Ich schrieb nicht die wichtigsten, der vorherige Entwickler tat. Es ist ein manueller "Rauchtest", den ich auf Junit portiere – sal