Ich versuche, einen Unittest für einen einfachen Bean zu schreiben, der in meinem Programm verwendet wird, um Formulare zu validieren. Der Bean ist mit @Component
annotiert und hat eine Klassenvariable, die mit
@Value("${this.property.value}") private String thisProperty;
initialisiert wird. Ich möchte Unittests für die Validierungsmethoden innerhalb dieser Klasse schreiben, aber wenn möglich möchte ich dies tun, ohne die properties-Datei zu nutzen. Mein Gedanke dahinter ist, dass sich mein Unittest nicht ändern soll, wenn sich der Wert ändert, den ich aus der properties-Datei hole. Mein Unittest testet den Code, der den Wert validiert, nicht den Wert selbst.
Gibt es eine Möglichkeit, Java-Code in meiner Testklasse zu verwenden, um eine Java-Klasse zu initialisieren und die Spring-@Value-Eigenschaft in dieser Klasse zu befüllen, um damit zu testen?
Ich habe diese Anleitung gefunden, die ähnlich ist, aber immer noch eine properties-Datei verwendet. Ich hätte es lieber komplett in Java-Code.