2016-04-04 7 views
2

Ich führe also einen Integrationstest/-spezifikation mit der Konfiguration für einen ActiveMQ-In-Memory-Broker durch.ActiveMQ-In-Memory-Broker wird nicht gestartet, wenn Tests in IntelliJ IDEA ausgeführt werden

SomeSpec.groovy:

@SpringApplicationConfiguration(SomeApplication.class) 
@WebIntegrationTest(randomPort = true) 
class SomeSpec extends Specification { 

application.properties

spring.activemq.in-memory=true 
spring.activemq.pooled=false 

Der in der Memory-Broker startet und läuft gut, wenn ich gradle test tun und läuft auch in Ordnung, wenn sie mit gradle bootRun auf Befehl verwendet Linie. Wenn ich jedoch innerhalb von IntelliJ laufe, ohne es explizit auszuführen, gradle test startet der In-Memory-Broker nicht und die Tests schlagen fehl.

Wie kann ich die guten Funktionen zum Testen/Spezifizieren in IntelliJ nutzen und nutzen, aber muss die Warteschlange im Speicher korrekt initialisiert werden? Ich weiß mit Grails, dass du mit JUnit oder Grails rennen kannst. Gibt es etwas Ähnliches mit Spring/SpringBoot, so fängt alles richtig an.

Antwort

1

Es ist wahrscheinlich, weil Ihre config Dateien nicht unter project/out/production/config/ Speicherort aktualisiert werden.

Wenn Sie es von cmd Zeile ausführen, dauert es die neuesten application.properties, so ist alles in Ordnung.

Aber Idea nimmt die bereits kompilierten Konfigurationsdateien, und wenn sie nicht innerhalb Idea neu erstellt werden, lädt es immer noch die Ladekonfiguration.

+0

Danke @ K139! Ich änderte Projektabhängigkeiten in build.gradle und aus irgendeinem Grund fordert mich meine aktuelle IntelliJ-Installation nicht auf, zu 'aktualisieren' oder so. –

+0

Auch gerade heraus dort ist ein Gradle Tools Window jetzt, das Sie öffnen und aktualisieren können. IntelliJ hat Sie gefragt, wann Änderungen in 'build.gradle' festgestellt werden und dann wird es für Sie aktualisiert. Nicht sicher, warum es damit aufgehört hat. –