Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Pytest Allure Как открыть allure report XML формата

xml
pytest
reporting
python
allure
Теги: #<Tag:0x00007f7b623dfdd0> #<Tag:0x00007f7b623dfbc8> #<Tag:0x00007f7b623dfa88> #<Tag:0x00007f7b623df948> #<Tag:0x00007f7b623df808>

(Наталья Рощина) #1

Всем привет! У меня никак не получается просмотреть Allure отчет, так как он в XML формате. Для запуска использую команду py.test -k [test_name] --alluredir [directory]. Заранее спасибо за помощь!


(Philipp Lebedev) #2

py.test -k [test_name] --alluredir [directory]
Данная команда складирует результаты тестов только.

Для просмотра отчета его необходимо сгенерировать:
allure generate [directory_с_результатами] -o [directory_куда_сгенерировать_отчет]


(Наталья Рощина) #3

Вторую команду запускать после тогда как получили результаты тестов с первой команды? Или же все вместе прописывать py.test -k [test_name] --alluredir [directory] allure generate [directory_с_результатами] -o [directory_куда_сгенерировать_отчет] ?


(Bolatbek) #4

Обычно генерацией занимается CI - например, Jenkins (внутри allure generate).
Задача тестов - сгенерить артефакты для аллюр (xml/txt/png).
При желании, конечно, можете ту команду Филиппа использовать в своих тестах. Насколько вашей фантазии хватит.


(Вадим) #5

Сам Allure состоит из двух компонентов, первый “слушатель” формирует XML с информацией о тесте, второй же превращает все это в красивый вид HTML.
Для первого вызываете py.test -k [test_name] –alluredir [directory]
а потом уже с результатов формируете HTML - allure serve path/to/allure-results( Директория где лежит XML )


(Наталья Рощина) #6

Всем спасибо! Получилось сгенерить отчет!


(Наталья Рощина) #7

Еще кто может подсказать, в чем может быть проблема не находит allure в pytest.allure.step.


(Вадим) #8

Попробуйте вызывать напрямую методы алюра, к примеру:

@allure.severity(allure.severity_level.CRITICAL)
@allure.story(‘Somesing story’)
@allure.step(‘Click button’)


(Наталья Рощина) #9

Спасибо, разобралась. allure.step получилось вызвать следующим способом.


(Вадим) #10

А такой вызов @allure.story(‘Somesing story’) не сработал ?


(Наталья Рощина) #11

Без MASTER_HELPER не находит step, story… Возможно, что-то не совсем правильно установила


(Вадим) #12

Какая версия Allure ?


(Наталья Рощина) #13

2.6.0


(Наталья Рощина) #14

А вот еще такой вопрос: командой py.test -v --alluredir [reports] генерируется новый отчет, перезатирая старый. Как можно сделать, чтобы отчеты сохранялись и можно было наблюдать trend , history и тд?


(Вадим) #15

НЕ знаю как локально, но на CI (Jenkins) оно автоматом хранит историю, и в репорте, отдельная вкладка, можно это просмотреть. Возможно и локально так же, не пробовал