Quiero usar testng con Surefire plug-in de Maven. La idea es etiquetar algunas pruebas con un grupo integrationTest
y ejecutar el complemento dos veces: para el objetivo test
excluyendo el grupo integrationTest
y para el objetivo integration-test
incluyendo el grupo integrationTest
solamente.¿Cómo utilizar el complemento Maven Surefire con diferentes grupos para prueba e integración-prueba?
Encontré algunos material para ejecutar el complemento para ambos objetivos y eso funciona, pero el grupo para la segunda ejecución no funciona (no se ejecuta ninguna prueba).
Aquí es la configuración de plug-in en el elemento de construcción de mi pom.xml
:
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<excludedGroups>integrationTest</excludedGroups>
<reportFormat>brief</reportFormat>
<trimStackTrace>true</trimStackTrace>
<useFile>false</useFile>
</configuration>
<executions>
<execution>
<id>integration-test</id>
<phase>integration-test</phase>
<goals>
<goal>test</goal>
</goals>
<configuration>
<groups>integrationTest</groups>
<excludedGroups/>
<reportsDirectory>${project.build.directory}/surefire-reports/integration</reportsDirectory>
</configuration>
</execution>
</executions>
</plugin>
Alguna idea? mvn integration-test
ejecuta todas las pruebas unitarias como se esperaba (excluyendo el grupo integrationTest
), pero la segunda prueba de funcionamiento simplemente escribe:
Correr TestSuite
pruebas se ejecutan: 0, Fallos: 0 Errores: 0, pasadas por alto: 0, Tiempo transcurrido : 0,562 seg
El Resultado de la mvn test
es como se esperaba, las pruebas se ejecutan y el grupo integrationTest
se ignora.
excludedGroups no funciona con TestNG 5.14.1 - ¡utilice 5.14.2 en su lugar! –
Con Surefire 2.18.1 y JUnit 4.10, aparece el error '[ERROR] Error al ejecutar el objetivo org.apache.maven.plugins: maven-surefire-plugin: 2.18.1: test (integration-test) en el ejemplo del proyecto- proyecto: prueba de integración de ejecución de objetivo org.apache.maven.plugins: maven-surefire-plugin: 2.18.1: error de prueba: Hubo un error en el proceso bifurcado [ERROR] java.lang.RuntimeException: no se pudo categoría de carga: ninguno'. Parece que el grupo con el que reemplazas debe existir, al menos, aunque no se use en ningún lado. Lo hago con una 'interfaz pública SystemTest extiende IntegrationTest' y excluyo * esa * categoría. – orlade