2017-06-26 5 views
1

Ich habe Spring-Anwendung, die drei Datenquellen verwendet, die Details sind in meiner Datei application.properties gespeichert. Suche Umgebungsvariablen für die Benutzernamen und Passwörter zu verwenden, finden Sie unter:SpringBoot-Tests mit application.properties mit Umgebungsvariablen

 
spring.datasource1.username=${DB1_Username}
spring.datasource1.password=${DB1_Password}

Dies ist funktioniert gut, wenn ich die Anwendung normal gestartet, aber nicht, wenn ich die Tests ausführen. Ich erhalte die folgende Fehlermeldung, wenn ich versuche, einen Test auszuführen:

 
com.microsoft.sqlserver.jdbc.SQLServerException: Login failed for user '${DB1_Username}'. 

kann Umgebungsvariablen nicht in der Datei application.properties verwendet werden, wenn Tests ausgeführt werden? Oder mache ich etwas Dummes?

+0

Wie führen Sie Ihre Test? – JEY

+0

Ich verwende den Befehl zum Erstellen von Großbuchstaben. Wenn ich den Gradle Build --debug verwende, sehe ich den Fehler oben. – spence

+0

Sie können verwendet werden, sind aber möglicherweise nicht im Gra- dle-Prozess festgelegt, während sie beim Start festgelegt werden. Sie können auch bestimmte Variablen im Test mithilfe von Anmerkungen überschreiben, um nicht darauf angewiesen zu sein, dass die Umgebung für den Test eingerichtet wird – pandaadb

Antwort

Verwandte Themen