Ich habe folgenden Legacy-Code:Refactoring statische Methode/statisches Feld zum Testen
public class MyLegacyClass
{
private static final String jndiName = "java:comp/env/jdbc/LegacyDataSource"
public static SomeLegacyClass doSomeLegacyStuff(SomeOtherLegacyClass legacyObj)
{
// do stuff using jndiName
}
}
Diese Klasse in einem J2EE-Container arbeitet.
Jetzt möchte ich die Klasse außerhalb des Containers testen.
Was ist die beste Strategie? Refactoring ist grundsätzlich erlaubt.
Der Zugriff auf die LegacyDataSource ist erlaubt (der Test muss kein "reiner" Unit-Test sein).
EDIT: Die Einführung zusätzlicher Laufzeit-Frameworks ist nicht erlaubt.
ich meine Antwort aktualisiert, basierend auf Ihre neue Einschränkung. Wir haben tatsächlich ein System, das das gleiche Problem lösen musste. – Robin