2016-05-04 10 views
0

Ich möchte meine Junit auf meinem Build-Jars laufen lassen, aber maven todsichere Plugin auf der Klassendatei vor der Paketphase, die in der Testphase ist, gibt es eine Möglichkeit, alle junit nach dem Bau eines Glases Projekt laufen zu lassen. Grund für die Ausführung von Build-Jar ist es, die Verschleierung des Jars zu überprüfen.Wie führe ich den Junit-Testfall nach der Paketphase in maven aus?

Antwort

2

Lösung ist die maven-failsafe-plugin verwenden, die in der Integration Testphase wird. Sie müssen dies auf Ihre pom-Datei:

<project> 
    [...] 
    <build> 
    <plugins> 
     <plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-failsafe-plugin</artifactId> 
     <version>2.19.1</version> 
     <executions> 
      <execution> 
      <goals> 
       <goal>integration-test</goal> 
       <goal>verify</goal> 
      </goals> 
      </execution> 
     </executions> 
     </plugin> 
    </plugins> 
    </build> 
    [...] 
</project> 

Sie sollten nach den conventions und die Namenskonventionen von Integrationstests folgen:

mvn clean verify 
:

<includes> 
<include>**/IT*.java</include> 
<include>**/*IT.java</include> 
<include>**/*ITCase.java</include> 
</includes> 

Danach können Sie diese Integrationstests über laufen

Wenn Sie möchten, only unit tests zu laufen:

mvn clean test 
+0

khmarbaise danke für ans, ich habe zwei Bedenken 1- wie könnte ich wissen, dass es das Projekt verschleiern Glas, während Testfälle ausführen,? und 2- wie kann ich das todsichere Plugin umgehen? – Afgan

+0

Um das richtige Glas zu nehmen, ist die Aufgabe dieses Integrationstests. Springtests können über 'mvn -DskipTests = true' durchgeführt werden ... – khmarbaise

+0

Danke khmarbaise funktioniert. – Afgan

0

Es gibt zwei Testphasen in maven, einer ist Komponententest, der zweite ist Integrationstests. Also, wenn Sie möchten, sollten Sie es in der Integration Tests Phase ausführen.