В отчете запуска тестов не писать "Сломан" в шаге, где произошел Java exception и был успешно обработан.
Фактическое
Пишу автотесты на Java. В проекте с автотестами использую кастомные иксепшены, которые выбрасывают методы аннотированые @Step в момент нештатной ситуации. В стэке высзовов этот иксепшн отлавливается, обрабатывается и в результате тест может пройти успешно. В то время, как в отчете запуска теста, внутри шага, где произошел иксепшн, присутствует оранжевый блок с надписью "Сломан".
Ожидаемое
Не нужно самим делать выводы, что что-то сломано. Нужно писать именно то, что произошло - ошибка, exception и т.д.! )) А в случае, когда иксепшн произошел, не был отловлен, обработан и повлек остановку теста. Надпись "Сломан" уместно писать только в шапке самого теста.
Сценарий из практики
Например, если я использую в автотестах библиотеку Awaitility для выполнения ожиданий какого либо состояния системы, и объект Callable при каждой попытке вызова получает иксепшн и успешно его игнорирует. В результате тест проходит успешно, а внутри шагов зияют оранжевые блоки "Сломан"!
ТестОпс - Версия 5.14.0
Когда метод под @Step бросает исключение, аспект allure фиксирует шаг как broken в момент выхода из метода и не может знать, что выше по стеку исключение поймают и проглотят. Поэтому «Сломан» здесь — это честный факт «шаг завершился исключением», а не вывод о всем тесте. В вашем кейсе с Awaitility/retry корень в том, что @Step стоит на коде, который штатно бросает на каждой попытке: решается на стороне автотестов (не помечать @Step ретраевые внутренности, либо использовать until(...)/ignoreExceptions() с булевым предикатом вместо бросающего Callable)
Само поведение относится к опенсорс-репозиторию allure report (https://github.com/allure-framework/allure2)