Дополнительные возможности

Скриншоты 

 Скрин страницы 

 page.screenshot(path="", full_page=True) 

 Скрин элемента тоже работает. 

 link.screenshot(path="") 

 Запись видео 

 from playwright.sync_api import Browser

def test_first(browser: Browser):

 context = browser.new_context(

 storage_state="playwright/.auth/vk.json",

 record_video_dir="video/"

 )

 page = context.new_page()

 page.goto("https://playwright.dev/python")

 link = page.get_by_role("link", name="GET STARTED")

 link.click()

 assert page.url == "https://playwright.dev/python/docs/intro"

 page.goto("https://vk.ru") 

 Вариант с текстурой:  

 import pytest

from playwright.sync_api import Browser, Page

@pytest.fixture

def recordable(browser: Browser):

 context = browser.new_context(

 storage_state="playwright/.auth/vk.json",

 record_video_dir="video/"

 )

 page = context.new_page()

 yield page

 context.close()

def test_first(recordable: Page):

 recordable.goto("https://playwright.dev/python")

 link = recordable.get_by_role("link", name="GET STARTED")

 link.click()

 assert recordable.url == "https://playwright.dev/python/docs/intro"

 recordable.goto("https://vk.ru") 

 Трассировка данных 

 Создание трассировки:  

 import pytest

from playwright.sync_api import Page, BrowserContext

@pytest.fixture(autouse=True)

def trace_test(context: BrowserContext):

 context.tracing.start(

 name="playwrite",

 screenshots=True,

 snapshots=True,

 sources=True

 )

 yield 

 context.tracing.stop(path="trace.zip")

def test_first(page: Page):

 page.goto("https://playwright.dev/python")

 link = page.get_by_role("link", name="GET STARTED")

 link.click()

 assert page.url == "https://playwright.dev/python/docs/intro" 

 Просмотр трассировки  

 playwright show-trace trace.zip 

 Запись действий 

 Старт записи  

 playwright codegen playwright.dev 

 В окне кода есть поле Target, позволяет переключать тип библиотек (playwright sync/async, pytest). Потом сохраняем полученную последовательность и устанавливаем нужные условия для проверки. 

   

   

   

   

   

  