NUnit-report no marca la compilación como error

Dec 04 2020

Dentro de mi trabajo Jenkins de estilo libre, estoy ejecutando pruebas unitarias a través del paso "ejecutar comando por lotes de Windows":

call "C:\Program Files (x86)\NUnit.org\nunit-console\nunit3-console.exe" MyAssembly.dll
call SomeOtherProcess

Como hay pruebas que fallan, esperaba que la compilación también fallara. Sin embargo, el paso de publicación de prueba para NUnit marca la compilación como inestable:

Build step 'Publish NUnit test result report' changed build result to UNSTABLE

Si elimino la línea SomeOtherProcess-line de mi script por lotes, todo funciona bien y los errores producidos por nunit se informan como errores en el proceso de compilación.

Leí un problema similar para JUnit-test-reporter ( Jenkins JUnit Plugin informa que una compilación es inestable incluso si la prueba falla ). Obviamente, ese reportero ni siquiera admite fallar en la construcción. No estoy seguro de si lo mismo se aplica a NUnit-reporter también.

Respuestas

1 sumitani Dec 11 2020 at 04:31

El complemento establece el resultado en UNSTABLEporque la opción, de forma predeterminada, failTestsFailBuild está establecida en false.

Puede controlar el comportamiento que se aplica a NUnit, estableciendo failedTestsFailBuilden true. Cuando llama desde una canalización declarativa o con script.

El problema es que la GUI no refleja todas las opciones disponibles para este complemento. Hay un RP abierto para incluir esta opción dentro del pipeline de estilo libre, puede votar o preguntar el estado de este RP.

Para cambiar a un error, debe detectar el resultado inestable y configurarlo para que falle mediante un complemento o una canalización declarativa o con script.