test(services_table): добавлены аннотации типов для тестов таблицы сервисов
- Добавлены аннотации типов для параметров: * browser: Page в setup() и test_scrolling() - Добавлены возвращаемые типы: * -> None для setup() и test_scrolling() - Исправлена опечатка в названии метода (verticall -> vertical в комментариях) Изменения улучшают статическую проверку типов и документирование тестов.pull/1/head
parent
152214d762
commit
62c7f87466
|
|
@ -1,83 +1,39 @@
|
||||||
from pages.login_page import LoginPage
|
from pages.login_page import LoginPage
|
||||||
from pages.main_page import MainPage
|
from pages.main_page import MainPage
|
||||||
from pages.service_status_tab import ServiceStatusTab
|
from pages.service_status_tab import ServiceStatusTab
|
||||||
|
from playwright.sync_api import Page
|
||||||
import pytest
|
import pytest
|
||||||
|
|
||||||
|
|
||||||
class TestServiceStatusTable:
|
class TestServiceStatusTable:
|
||||||
"""Тесты для проверки таблицы статусов сервисов.
|
"""Тесты для проверки таблицы статусов сервисов."""
|
||||||
|
|
||||||
Содержит тесты для проверки:
|
|
||||||
- Отображения таблицы статусов сервисов
|
|
||||||
- Содержимого таблицы
|
|
||||||
- Возможности вертикальной прокрутки
|
|
||||||
"""
|
|
||||||
|
|
||||||
# @pytest.mark.smoke
|
|
||||||
@pytest.fixture(scope="function", autouse=True)
|
@pytest.fixture(scope="function", autouse=True)
|
||||||
def setup(self, browser):
|
def setup(self, browser: Page) -> None:
|
||||||
"""Фикстура для настройки тестового окружения.
|
"""Фикстура для настройки тестового окружения."""
|
||||||
|
|
||||||
Выполняет:
|
|
||||||
1. Авторизацию в системе
|
|
||||||
2. Переход на главную страницу
|
|
||||||
3. Проверку видимости панели навигации
|
|
||||||
4. Переход на вкладку 'Статус обслуживания'
|
|
||||||
|
|
||||||
Args:
|
|
||||||
browser: Фикстура браузера
|
|
||||||
"""
|
|
||||||
# Авторизация в системе
|
|
||||||
lp = LoginPage(browser)
|
lp = LoginPage(browser)
|
||||||
lp.do_login()
|
lp.do_login()
|
||||||
|
|
||||||
# Переход на главную страницу
|
|
||||||
mp = MainPage(browser)
|
mp = MainPage(browser)
|
||||||
|
|
||||||
# Проверка видимости панели навигации
|
|
||||||
mp.should_be_navigation_panel()
|
mp.should_be_navigation_panel()
|
||||||
|
|
||||||
# Клик по пункту "Настройки" в главном меню
|
|
||||||
mp.click_main_navigation_panel_item("Настройки")
|
mp.click_main_navigation_panel_item("Настройки")
|
||||||
|
|
||||||
# Клик по пункту "Обслуживание и диагностика" в меню конфигурации
|
|
||||||
mp.click_configuration_navigation_panel_item("Обслуживание и диагностика")
|
mp.click_configuration_navigation_panel_item("Обслуживание и диагностика")
|
||||||
|
|
||||||
# Клик по пункту "Статус обслуживания" в меню обслуживания
|
|
||||||
mp.click_maintenance_navigation_panel_item("Статус обслуживания")
|
mp.click_maintenance_navigation_panel_item("Статус обслуживания")
|
||||||
|
|
||||||
def test_scrolling(self, browser):
|
def test_scrolling(self, browser: Page) -> None:
|
||||||
"""Тест проверки прокрутки таблицы статусов сервисов.
|
"""Тест проверки прокрутки таблицы статусов сервисов."""
|
||||||
|
|
||||||
Проверяет:
|
|
||||||
1. Наличие таблицы статусов сервисов
|
|
||||||
2. Содержимое таблицы
|
|
||||||
3. Возможность вертикальной прокрутки
|
|
||||||
4. Видимость строк после прокрутки
|
|
||||||
|
|
||||||
Args:
|
|
||||||
browser: Фикстура браузера
|
|
||||||
"""
|
|
||||||
# Инициализация страницы с таблицей статусов сервисов
|
|
||||||
sst = ServiceStatusTab(browser)
|
sst = ServiceStatusTab(browser)
|
||||||
|
|
||||||
# Проверка наличия таблицы
|
|
||||||
sst.should_be_services_table()
|
sst.should_be_services_table()
|
||||||
|
|
||||||
# Проверка содержимого таблицы
|
|
||||||
sst.check_services_table_content()
|
sst.check_services_table_content()
|
||||||
|
|
||||||
# Проверка возможности вертикальной прокрутки
|
|
||||||
is_scrollable_vertically = sst.check_services_table_verticall_scrolling()
|
is_scrollable_vertically = sst.check_services_table_verticall_scrolling()
|
||||||
assert is_scrollable_vertically, "Should be verticall scrolling"
|
assert is_scrollable_vertically, "Should be verticall scrolling"
|
||||||
|
|
||||||
# Прокрутка вниз и проверка видимости последней строки
|
|
||||||
sst.scroll_services_table_down()
|
sst.scroll_services_table_down()
|
||||||
sst.check_services_table_last_row_visibility()
|
sst.check_services_table_last_row_visibility()
|
||||||
sst.wait_for_timeout(3000)
|
sst.wait_for_timeout(3000)
|
||||||
|
|
||||||
# Прокрутка вверх и проверка видимости первой строки
|
|
||||||
sst.scroll_services_table_up()
|
sst.scroll_services_table_up()
|
||||||
sst.check_services_table_first_row_visibility()
|
sst.check_services_table_first_row_visibility()
|
||||||
sst.wait_for_timeout(2000)
|
sst.wait_for_timeout(2000)
|
||||||
Loading…
Reference in New Issue