Maven stellt mehrere Kriege für eingebettete Server für Integrationstests bereit

8

Ich hatte kein Problem, ein Maven War-Projekt auf einem eingebetteten Server für seine eigenen Integrationstests laufen zu lassen, aber jetzt muss ich mehrere Kriege führen und aus einem anderen Projekt testen.

Ich möchte das folgende Szenario einrichten ...

Ich habe zwei Maven-Kriegsprojekte in meinem lokalen Arbeitsbereich namens War1 und War2. Ich hätte gerne ein 3. Maven-Projekt, WarIntegration, das nur Integrationstests enthält und folgendes tut:

  1. Pakete War1
  2. Pakete War2
  3. Startet einen eingebetteten Server
  4. Implementiert beide Kriege auf demselben eingebetteten Server
  5. Führt Integrationstests aus, die in WarIntegration enthalten sind (wodurch http Aufrufe an War1 und War2 erfolgen)
  6. Stoppt den eingebetteten Server

Ist das möglich? Welche Plugin-Einrichtung wird dies erreichen? Was für ein Projekt sollte WarIntergration sein (Verpackung)? Sollten War1 und War2 Module in WarIntegration oder Abhängigkeiten sein? Kann die gesamte Konfiguration dem WarIntegration-Projekt zugewiesen werden oder müsste es auf die Projekte verteilt werden?

Dies ist dieser Frage ähnlich, nur dass wir einen eingebetteten Server verwenden müssen, der vom Projekt gestartet und gestoppt wird (wahrscheinlich, wenn wir verify ausführen) und wir ein separates Projekt für Integrationstests benötigen: Ich habe ein Maven 2 POM mit mehreren Modulen, das über zwei WARs verfügt. Wie kann ich es so konfigurieren, dass beide Warts vor dem Ausführen von Tests bereitgestellt werden?

    
smp7d 21.06.2012, 16:08
quelle

2 Antworten

5

Das konnte ich mit dem cargo-maven2-plugin erreichen.

Hier sind die relevanten Stücke des Pom für jeden, der interessiert ist ...

%Vor%     
smp7d 25.06.2012, 15:53
quelle
2

Achtung, das DEPLOYABLES-Element ist ein Kind von plugin / configuration, NICHT plugin / configuration / configuration.

Das obige Beispiel sollte lauten:

%Vor%

Hoffe das hilft!

    
Brice 30.10.2014 08:19
quelle