Mam następujący kod starszego typu:Refactoring statyczna metoda/pole statyczne Badań
public class MyLegacyClass
{
private static final String jndiName = "java:comp/env/jdbc/LegacyDataSource"
public static SomeLegacyClass doSomeLegacyStuff(SomeOtherLegacyClass legacyObj)
{
// do stuff using jndiName
}
}
Klasa ta działa w J2EE pojemnika.
Teraz chciałbym przetestować klasę poza kontenerem.
Jaka jest najlepsza strategia? Refaktoryzacja jest zasadniczo dozwolona.
Dostęp do LegacyDataSource jest dozwolony (test nie musi być "czystym" testem jednostkowym).
EDYCJA: Wprowadzenie dodatkowych ramek środowiska wykonawczego jest niedozwolone.
Zaktualizowałem swoją odpowiedź na podstawie Twojego nowego ograniczenia. W rzeczywistości mamy system, który musiał rozwiązać ten sam problem. – Robin