0

In meinem Projekt habe ich sowohl todsichere als auch ausfallsichere Tests.Wie kann man todsichere Tests überspringen, aber ausfallsichere Tests durchführen?

Wenn ich mit mvn clean install -DskipTests starte, dann werden beide Arten von Tests übersprungen.

Wenn ich versuche, einen einzigen fehlersicheren Test mit -Dit.test = TestName zu starten, dann laufen zuerst alle todsicheren Tests und dann mein Test. Aber da die todsicheren Tests sehr lange dauern, ist das nicht gut.

Ich möchte die todsicheren Tests in einigen Fällen überspringen, aber die ausfallsicheren IT-Tests ausführen.

Antwort

2

Es ist manchmal etwas verwirrend (nervig?), Dass -DskipITs=true standardmäßig Failsafe überspringt, aber -DskipTests=true sowohl Surefire als auch Failsafe-Tests überspringt.

Wie auch immer, Sie können dieses Verhalten ändern, indem Sie das Surefire-Plugin so konfigurieren, dass es einen anderen 'Skip'-Parameter verwendet. Zum Beispiel:

<plugin> 
    <groupId>org.apache.maven.plugins</groupId> 
    <artifactId>maven-surefire-plugin</artifactId> 
    <version>2.12.4</version> 
    <configuration> 
     <skip>${skipSurefire}</skip> 
    </configuration> 
</plugin> 

Dies ermöglicht es Ihnen todsichere Tests aber nicht Failsafe-Tests durch den Aufruf zu überspringen:

mvn clean verify -DskipSurefire=true 
+0

Dank. Das hilft. Es erlaubt sogar noch, -DskipTests zu machen, um alle Tests zu überspringen. Das ist genau das, was ich brauchte. –

Verwandte Themen