Esecuzione di test con packaging Maven "POM"
-
27-10-2019 - |
Domanda
Sto riscontrando alcuni problemi che eseguono i miei test unitari quando il mio POM è impostato sul tipo di imballaggio "POM". Inizialmente, non diceva che non sono necessari obiettivi per questo progetto, quindi ho aggiunto la plugina di Maven-Sure-Fire al mio POM.xml per legare la fase di test all'obiettivo di test Maven-Sure-Plugin.
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<version>2.9</version>
<executions>
<execution>
<phase>test</phase>
<goals>
<goal>test</goal>
</goals>
</execution>
</executions>
</plugin>
Ora il plug -in Surefire viene eseguito, ma dice che non ci sono test da eseguire. Se cambio il tipo di imballaggio in JAR ed eseguo il test MVN, raccoglie i miei file di test.
Quando eseguo MVN Test -x dice "TestSourceDirectory = C: dev dsl src test java", che è la posizione corretta. La posizione del test è diversa per il tipo di imballaggio "POM" che per "Jar"? Ho provato ad aggiungere
<configuration>
<testSourceDirectory>src/test/java</testSourceDirectory>
</configuration>
Al plugin infallibile, ma non ha aiutato affatto.
Soluzione
Come commentato da Dave, se stai usando pom
Packaging, esegue solo i seguenti obiettivi del ciclo di vita. Fare riferimento a questo Documentazione di Maven correlata.
- pacchetto
- installare
- dispiegare
Se ne hai bisogno per eseguire qualsiasi altro obiettivo, dovresti specificarlo esplicitamente. Per esempio,
mvn clean compiler:testCompile surefire:test