Прикрепление ссылки, в отчет Allure, страницы где закончился тест.

pytest
reporting
python
allure
Теги: #<Tag:0x00007f7b697d3b38> #<Tag:0x00007f7b697d3840> #<Tag:0x00007f7b697d36b0> #<Tag:0x00007f7b697d3548>

(Sergey Kozhevnikov) #1

Здравствуйте.

Хочу добавить ссылку в отчет при окончание теста(при падение или успешном прохождение).
Пробовал так:

@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
    allure.link(driver.instance.current_url, name="link")

И пробовал вот так:

@allure.link(driver.instance.current_url, name="link")
@pytest.mark.hookwrapper
def pytest_runtest_makereport(item, call):
    ...

Не сработало.

Подскажите, пожалуйста, как реализовать, что бы ссылка попала в отчет.

Python + Pytest + Allur 2


(Igor Balagurov) #2

Я не уверен, что через @allure.link можно добавить по ходу теста ссылку.
Попробуй использовать attach для этого.

@pytest.fixture(autouse=True)
def add_link():
  yield
  your_link = driver.instance.current_url
  allure.attach(your_link)

(Maxim Andryushchenkov) #3

Попробуйте вот этот хук:

def pytest_sessionfinish(session, exitstatus):
    """
    Хук выполняется перед закрытием сессии тестирования
    """
    pass

(Sergey Kozhevnikov) #4

Получилось. Прикрепил таким образом и все заработало.

        allure.attach(
            driver.instance.current_url,
            name="Link",
            attachment_type=allure.attachment_type.URI_LIST
        )