la mia domanda è molto simile a questa: maven-failsafe-plugin Failures and BUILD SUCCESS?maven-failsafe-plugin Errori e BUILD SUCCESS?
e riesco a configurare il failover fail-safe in caso di esito negativo.
Ma se il test va in stato di errore, il plugin failsafe continua a non interrompere la compilazione.
.................
-------------------------------------------------------
T E S T S
-------------------------------------------------------
Running xxxxx.IntegrationTierFunctionalTestCase
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 0.054 sec <<< FAILURE!
Results :
Tests in error:
testException(xxxxx.IntegrationTierFunctionalTestCas
Tests run: 1, Failures: 0, Errors: 1, Skipped: 0
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is
[INFO] [failsafe:verify {execution: functional-test-1024}]
[INFO] Failsafe report directory: C:\projects\oec-integration-server\trunk\oec-integrati
[WARNING] File encoding has not been set, using platform encoding Cp1252, i.e. build is
[INFO] [failsafe:integration-test {execution: functional-test-24}]
[INFO] Failsafe report directory: C:\projects\oec-integration-server\trunk\oec-integrati
.............
[INFO] ------------------------------------------------------------------------
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESSFUL
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 58 seconds
[INFO] Finished at: Tue May 28 17:48:13 BST 2013
[INFO] Final Memory: 114M/781M
[INFO] ------------------------------------------------------------------------
per simplicy IntegrationTierFunctionalTestCase contiene questo codice solo
import org.junit.Test;
import static org.junit.Assert.fail;
public class IntegrationTierFunctionalTestCase
{
@Test
public void testException(){
//fail();
throw new RuntimeException("super error");
}
}
se io fallisco decommentare() tutta la generazione non correttamente, con generazione non riuscita. ma se lancio un'eccezione, fallisce come mostrato sopra.
configurazione oour plug-in si presenta così
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-failsafe-plugin</artifactId>
<version>2.7</version>
<configuration>
<redirectTestOutputToFile>true</redirectTestOutputToFile>
<systemPropertyVariables>
<oec.env>TEST</oec.env>
<mule.test.timeoutSecs>2400</mule.test.timeoutSecs>
</systemPropertyVariables>
<additionalClasspathElements>
<additionalClasspathElement>${basedir}/src/main/resources/config</additionalClasspathElement>
</additionalClasspathElement>
</additionalClasspathElements>
</configuration>
<executions>
<execution>
<id>functional-test-1024</id>
<phase>test</phase>
<goals>
<goal>integration-test</goal>
<goal>verify</goal>
</goals>
<configuration>
<includes>
<include>**/IntegrationTierFunctionalTestCase.java</include>
</includes>
<forkMode>once</forkMode>
<argLine>-XX:MaxPermSize=256M -Xmx1024M</argLine>
</configuration>
</execution>
</executions>
</plugin>
Che cosa mi manca? E no non voglio avvolgerlo in blocchi try-catch e fallire test manualmente.
Grazie mille, che ha funzionato, ma non in 2.7 , quindi ho dovuto aggiornare la versione come hai menzionato – udik
Come sottolineato in [questa domanda] (http://stackoverflow.com/questions/12279160/maven-failsafe-plugin-failures-and-build-success) - "il corretto la soluzione è usare failsafe come previsto. L'integrazione -test obiettivo è specificamente progettato per non fallire la build. " Pertanto, sebbene questa informazione sia corretta, non è la risposta alla domanda. – charneykaye