NUnit-report не отмечает сборку как ошибку

Dec 04 2020

В моей свободной работе Jenkins я выполняю модульные тесты с помощью шага «выполнить пакетную команду Windows»:

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

Поскольку есть тесты, которые терпят неудачу, я ожидал, что и сборка не удастся. Однако на этапе публикации теста для NUnit сборка помечается как нестабильная:

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

Если я удалю SomeOtherProcessстроку из своего пакетного сценария, все будет работать нормально, а ошибки, произведенные nunit, будут сообщаться как ошибки в процессе сборки.

Я прочитал аналогичную проблему для JUnit-test-reporter ( плагин Jenkins JUnit сообщает о нестабильной сборке, даже если тест не прошел ). Очевидно, что этот репортер даже не поддерживает неудачную сборку. Я не уверен, что то же самое можно сказать и о NUnit-reporter.

Ответы

1 sumitani Dec 11 2020 at 04:31

Плагин установил результат равным,UNSTABLE поскольку для параметра по умолчанию failedTestsFailBuild установлено значение false.

Вы можете контролировать поведение применяется в NUnit, установив failedTestsFailBuildв true. Когда вы звоните из скриптового или декларативного конвейера.

Проблема в том, что графический интерфейс не отображает все параметры, доступные для этого плагина. Существует PR открыт , чтобы включить эту опцию внутри фристайла трубопровода, вы можете проголосовать вверх или спросить статус этого PR.

Чтобы перейти к ошибке, вам нужно поймать нестабильный результат и установить для него отказ, используя плагин, скриптовый или декларативный конвейер.