Ich beginne mit Camel und habe Probleme beim Schreiben eines Tests. Mein Anwendungsfall entspricht genau dem Beispiel cfx proxy . Außer dass ich den "RealWebservice" nicht benötige. Jetzt versuche ich einen Komponententest zu schreiben (nicht einen Integrationstest wie im Beispiel), indem ich den Annotationsansatz verwende:
%Vor%Der CxfEndpoint empfängt die Nachricht , die anderen Endpunkte jedoch nicht.
Die Route sieht so aus (sie funktioniert, wenn ich sie ausführe und eine Nachricht mit SoapUI sende, offensichtlich habe ich die ips und beannames in diesem Beispiel verschleiert):
%Vor%Was mache ich falsch? Alle Beispiele und andere Fragen, die ich gefunden habe, scheinen "direct: start" zu verwenden oder den Produktionsweg zu ändern.
Ein Ansatz, den wir erfolgreich verwendet haben, ist die Verwendung verschiedener Eigenschaftendateien für die Testausführung und für den Hauptcode.
Wir definieren innerhalb des Kamelkontexts die Eigenschaft
%Vor% Im Ordner /src/main/resources/META-INF/
haben wir die Datei uri.properties für den Hauptcode und /src/test/resources/META-INF/
haben wir die uri.properties für die Testausführung.
Ihre Route muss unter Verwendung der Eigenschaft {{properties.name}}
Die wichtigsten uri.properties werden
sein %Vor%Der Test uri.properties wird
sein %Vor%Mit dieser Konfiguration können Sie Ihre Route einfach testen.
Tags und Links java cxf apache-camel