87 lines
3.1 KiB
Python
87 lines
3.1 KiB
Python
"""Модуль тестов вкладки 'Объекты'.
|
||
|
||
Содержит тесты для проверки функциональности
|
||
работы с объектами.
|
||
"""
|
||
import pytest
|
||
|
||
from playwright.sync_api import Page
|
||
from tools.logger import get_logger
|
||
from pages.login_page import LoginPage
|
||
from pages.main_page import MainPage
|
||
from pages.rack_general_info import RackGeneralInfo
|
||
|
||
logger = get_logger("TestRackGeneralInfo")
|
||
|
||
# @pytest.mark.smoke
|
||
class TestRackGeneralInfo:
|
||
"""Набор тестов для вкладки 'Стойка' в Объектах.
|
||
|
||
Проверяет корректность отображения и функциональность элементов вкладки Стойка.
|
||
"""
|
||
|
||
@pytest.fixture(scope="function", autouse=True)
|
||
def setup(self, browser: Page) -> None:
|
||
"""Настраивает тестовое окружение.
|
||
|
||
Args:
|
||
browser: Экземпляр страницы Playwright.
|
||
"""
|
||
|
||
lp = LoginPage(browser)
|
||
lp.do_login()
|
||
|
||
mp = MainPage(browser)
|
||
mp.should_be_navigation_panel()
|
||
|
||
# Переходим к Объектам
|
||
mp.click_main_navigation_panel_item("Объекты")
|
||
browser.wait_for_timeout(3000)
|
||
|
||
mp.click_subpanel_item("Виртуальные устройства")
|
||
browser.wait_for_timeout(3000)
|
||
|
||
# Переходим к Стойка систем питания с указанием родителя
|
||
mp.click_subpanel_item("Стойка систем питания", parent="Виртуальные устройства")
|
||
browser.wait_for_timeout(5000)
|
||
|
||
def test_rack_tab_content(self, browser: Page) -> None:
|
||
"""Проверяет содержимое вкладки 'Cтойка'.
|
||
|
||
Args:
|
||
browser: Экземпляр страницы Playwright.
|
||
"""
|
||
|
||
rack_tab = RackGeneralInfo(browser)
|
||
|
||
# Добавляем отладку
|
||
rack_tab.debug_page_content()
|
||
|
||
# Проверяем основные элементы
|
||
rack_tab.should_be_toolbar()
|
||
#rack_tab.should_be_rack_info_table()
|
||
rack_tab.check_rack_general_info_content()
|
||
|
||
def test_rack_tab_toolbar_buttons(self, browser: Page) -> None:
|
||
"""Проверяет кнопки на панели инструментов.
|
||
|
||
Args:
|
||
browser: Экземпляр страницы Playwright.
|
||
"""
|
||
|
||
rack_tab = RackGeneralInfo(browser)
|
||
rack_tab.should_be_toolbar_buttons()
|
||
|
||
@pytest.mark.develop
|
||
def test_rack_tab_switching(self, browser: Page) -> None:
|
||
"""Проверяет переключение между вкладками стойки."""
|
||
rack_tab = RackGeneralInfo(browser)
|
||
|
||
# Сначала отладочная информация
|
||
rack_tab.debug_tabs_structure()
|
||
rack_tab.debug_tabs_clickability()
|
||
|
||
# Затем проверяем переключение
|
||
rack_tab.check_tab_switching()
|
||
|
||
logger.info("All tab switching tests completed successfully") |