Удаленка для jenkins+selenide+selenoid+allure+docker спецов на 2-3 часа в день. 100% remote! Присоединиться к проекту

allure + py.test. Продолжение теста, после assert'ов, использующихся в step'ах

allure
testng
python
Теги: #<Tag:0x00007fedbc7578b0> #<Tag:0x00007fedbc757748> #<Tag:0x00007fedbc757608>

(Mr Nowhere) #1

Добрый вечер! В компании используется следующая структура. Каждый тест-кейс состоит из наборов step’ов. В конце каждого step’а есть assert. Если на каком-либо шаге сработал assert, тест считается зафейленым и шаги после assert’a не выполняются. Подскажите пожалуйста, есть ли возможность, после найденного assert’a продолжать выполнять шаги, и в конце, зайдя в тест-кейс, обозначить места где сработал assert (красным крестиком)?

Здесь в примере, есть еще набор шагов, однако в том месте где сработал assert, все сворачивается

Нашел пару плагинов pytest-assume, pytest-expect, которые позволяют пропустить ошибки, но в таком случае в allure не отображается на каком именно шаге(шагах) произошла ошибка

В примере выше, assert отработал на 2 шаге , однако никак не пометился…

Буду всем признателен за помощь!


(Aleksandr Jashhuk) #2

To: mrNowhere
Нашлось решение?


(Mykola Malius) #3

В Java есть библиотека SoftAssert, возможно в Python есть что-то похожее - http://pythontesting.net/strategy/delayed-assert/