Hacer que Maven ejecute todas las pruebas, incluso cuando algunas fallan
Tengo un proyecto con varios módulos. Cuando pasan todas las pruebas, la prueba de Maven las ejecuta todas.
Cuando las pruebas fallan en el primer módulo, maven no continuará con el siguiente proyecto. Tengo testFailureIgnore configurado en verdadero en la configuración de Surefire, pero no ayuda.
¿Cómo hago para que Maven ejecute todas las pruebas independientemente de las fallas anteriores?
De la documentación de Maven Embedder :
-fae
,--fail-at-end
Solo falla la compilación después; permitir que continúen todas las compilaciones no afectadas
-fn
NUNCA--fail-never
falle la construcción, independientemente del resultado del proyecto.
Entonces, si está probando un módulo, puede usarlo con seguridad -fae
.
De lo contrario, si tiene varios módulos y desea probarlos todos (incluso los que dependen del módulo de pruebas fallido), debe ejecutar mvn clean install -fn
.
-fae
continuará con el módulo que tiene una prueba fallida (ejecutará todas las demás pruebas), pero se omitirán todos los módulos que dependen de él.
Configure Surefire con <testFailureIgnore>true</testFailureIgnore>
.
O en la línea de comando:
mvn install -Dmaven.test.failure.ignore=true
Acabo de encontrar el -fae
parámetro que hace que Maven ejecute todas las pruebas y no se detenga ante una falla.