e-nms_qa_automation/tests/e2e/test_service_status_tab.py

80 lines
3.4 KiB
Python
Raw Blame History

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

from pages.login_page import LoginPage
from pages.main_page import MainPage
from pages.service_status_tab import ServiceStatusTab
import pytest
class TestServiceStatusTab:
"""Набор тестов для вкладки 'Статус обслуживания'.
Проверяет корректность отображения и функциональность элементов вкладки.
"""
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser):
"""Фикстура для подготовки тестового окружения.
Выполняет:
1. Авторизацию в системе
2. Переход на вкладку 'Статус обслуживания'
"""
lp = LoginPage(browser)
lp.do_login()
# Переход на главную страницу
mp = MainPage(browser)
# Проверка наличия панели навигации
mp.should_be_navigation_panel()
# Клик по пункту 'Настройки' в главной панели навигации
mp.click_main_navigation_panel_item("Настройки")
# Клик по пункту 'Обслуживание и диагностика' в панели навигации настроек
mp.click_configuration_navigation_panel_item("Обслуживание и диагностика")
# Клик по пункту 'Статус обслуживания' в панели навигации обслуживания
mp.click_maintenance_navigation_panel_item("Статус обслуживания")
def test_service_status_tab_content(self, browser):
"""Тест содержимого вкладки 'Статус обслуживания'.
Проверяет:
1. Наличие тулбара
2. Наличие таблицы сервисов
3. Корректность содержимого таблицы
"""
sst = ServiceStatusTab(browser)
# Проверка тулбара вкладки
sst.should_be_toolbar()
# Проверка наличия таблицы статусов сервисов
sst.should_be_services_table()
# Проверка содержимого таблицы сервисов
sst.check_services_table_content()
def test_service_status_table_row_highlighting(self, browser):
"""Тест выделения строк в таблице сервисов.
Проверяет выделение строк:
1. Первой строки
2. Последней строки
3. Строки в середине таблицы
"""
sst = ServiceStatusTab(browser)
# Проверка тулбара вкладки
sst.should_be_toolbar()
# Проверка наличия таблицы статусов сервисов
sst.should_be_services_table()
# Получение количества строк в таблице
rows_count = sst.get_rows_count()
# Проверка выделения строк
sst.check_services_table_row_highlighting(0)
sst.check_services_table_row_highlighting(rows_count - 1)
sst.check_services_table_row_highlighting(int(rows_count / 2))