Python + Selenium: как в имя скриншота автоматически добавлять название теста и параметр ids или номер?

Рейтинг: 0Ответов: 0Опубликовано: 13.01.2023

Изучаю написание тестов на Python + Selenium на основе Page Object.

В общем виде код самого теста выглядит следующим образом:

pytest.mark.parametrize("first_name", [double_first_name, empty_form, long_first_name],
                     ids=["double_first_name", "empty_form", "long_first_name"])
def test_reg_form_name(browser, first_name):
    passport_reg_page = RegForm(browser)
    passport_reg_page.go_to_site()
    passport_reg_page.reg_page()
    passport_reg_page.reg_first_name(first_name)
    passport_reg_page.reg_button()
    passport_reg_page = RegFormExpectations(browser)
    passport_reg_page.reg_expect_name()
    assert rt_passport_reg_page.reg_expect_name()
    browser.save_screenshot('screenshots/test_reg_1.png')

Как написать и вызвать функцию, чтобы в имя скриншота автоматически добавлялось название теста + параметр ids или хотя бы название теста + номер каждого прогона параметра? Например:

browser.save_screenshot(f'screenshots/{"test_reg_form_name"}+"_"+{"ids"}.png')

или

browser.save_screenshot(f'screenshots/{"test_reg_form_name"}+"_"+{"001,002,003..."}.png')

Ответы

Ответов пока нет.