feat(pages): добавлены аннотации типов для параметров и фикстур

- Типизированы параметры в функциях и фикстурах:
  * parser: Parser в pytest_addoption()
  * request: FixtureRequest в browser() и других методах
  * playwright: Playwright в get_firefox_browser() и аналогичных
  * browser: Browser и start: str в get_context()
  * browser: Page в return_back()

- обнавлены импорты типов:
  * Playwright из playwright.sync_api
  * Parser из _pytest.config.argparsing
  * FixtureRequest из _pytest.fixtures

Изменения повышают надежность и поддерживаемость тестового фреймворка
pull/1/head
Radislav 2025-07-21 14:40:38 +03:00
parent 93d268951b
commit 74498a3de2
1 changed files with 10 additions and 8 deletions

View File

@ -4,11 +4,13 @@
""" """
import pytest import pytest
from playwright.sync_api import Browser, BrowserContext, Page, sync_playwright from playwright.sync_api import Browser, BrowserContext, Page, sync_playwright, Playwright
import os import os
from _pytest.config.argparsing import Parser
from _pytest.fixtures import FixtureRequest
def pytest_addoption(parser): def pytest_addoption(parser: Parser):
"""Добавляет пользовательские опции командной строки для настройки браузера. """Добавляет пользовательские опции командной строки для настройки браузера.
Args: Args:
@ -42,7 +44,7 @@ def pytest_addoption(parser):
@pytest.fixture(scope='class') @pytest.fixture(scope='class')
def browser(request) -> Page: def browser(request: FixtureRequest) -> Page:
"""Фикстура для создания и управления экземпляром браузера. """Фикстура для создания и управления экземпляром браузера.
Args: Args:
@ -86,7 +88,7 @@ def browser(request) -> Page:
playwright.stop() playwright.stop()
def get_firefox_browser(playwright, request) -> Browser: def get_firefox_browser(playwright: Playwright, request: FixtureRequest) -> Browser:
"""Создает и возвращает экземпляр Firefox браузера. """Создает и возвращает экземпляр Firefox браузера.
Args: Args:
@ -102,7 +104,7 @@ def get_firefox_browser(playwright, request) -> Browser:
) )
def get_chrome_browser(playwright, request) -> Browser: def get_chrome_browser(playwright: Playwright, request: FixtureRequest) -> Browser:
"""Создает и возвращает экземпляр Chrome браузера. """Создает и возвращает экземпляр Chrome браузера.
Args: Args:
@ -119,7 +121,7 @@ def get_chrome_browser(playwright, request) -> Browser:
) )
def get_remote_chrome(playwright, request) -> Browser: def get_remote_chrome(playwright: Playwright, request: FixtureRequest) -> Browser:
"""Создает и возвращает экземпляр Chrome браузера для удаленного запуска. """Создает и возвращает экземпляр Chrome браузера для удаленного запуска.
Args: Args:
@ -135,7 +137,7 @@ def get_remote_chrome(playwright, request) -> Browser:
) )
def get_context(browser, request, start) -> BrowserContext: def get_context(browser: Browser, request: FixtureRequest, start: str) -> BrowserContext:
"""Создает и настраивает контекст браузера. """Создает и настраивает контекст браузера.
Args: Args:
@ -173,7 +175,7 @@ def get_context(browser, request, start) -> BrowserContext:
@pytest.fixture(scope="function") @pytest.fixture(scope="function")
def return_back(browser): def return_back(browser: Page):
"""Фикстура для возврата на предыдущую страницу в браузере. """Фикстура для возврата на предыдущую страницу в браузере.
Args: Args: