Skip to content

TestServiceStatusTab

Модуль тестов вкладки 'Статус обслуживания'.

Содержит тесты для проверки отображения и функциональности элементов вкладки статусов сервисов.

TestServiceStatusTab

Класс тестов для проверки вкладки 'Статус обслуживания'.

Тесты покрывают следующие сценарии: 1. test_service_status_tab_content: Проверяет содержимое вкладки 'Статус обслуживания' 2. test_service_status_table_row_highlighting: Проверяет выделение строк в таблице сервисов

Source code in tests\e2e\test_service_status_tab.py
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
class TestServiceStatusTab:
    """Класс тестов для проверки вкладки 'Статус обслуживания'.

    Тесты покрывают следующие сценарии:
    1. test_service_status_tab_content: Проверяет содержимое вкладки 'Статус обслуживания'
    2. test_service_status_table_row_highlighting: Проверяет выделение строк в таблице сервисов
    """

    @pytest.fixture(scope="function", autouse=True)
    def setup(self, browser: Page):
        """Подготавливает тестовое окружение.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        lp = LoginPage(browser)
        lp.do_login()

        # Переход на главную страницу
        mp = MainPage(browser)

        # Проверка наличия панели навигации
        mp.should_be_navigation_panel()

        # Клик по пункту 'Настройки' в главной панели навигации
        mp.click_main_navigation_panel_item("Настройки")

        # Клик по пункту 'Обслуживание и диагностика' в панели навигации настроек
        mp.click_subpanel_item("Обслуживание и диагностика")

        # Клик по пункту 'Статус обслуживания' в панели навигации обслуживания
        mp.click_subpanel_item("Статус обслуживания")

    def test_service_status_tab_content(self, browser: Page):
        """Проверяет содержимое вкладки 'Статус обслуживания'.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        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: Page):
        """Проверяет выделение строк в таблице сервисов.

        Args:
            browser: Экземпляр страницы Playwright.
        """

        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))

setup(browser)

Подготавливает тестовое окружение.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_service_status_tab.py
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser: Page):
    """Подготавливает тестовое окружение.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    lp = LoginPage(browser)
    lp.do_login()

    # Переход на главную страницу
    mp = MainPage(browser)

    # Проверка наличия панели навигации
    mp.should_be_navigation_panel()

    # Клик по пункту 'Настройки' в главной панели навигации
    mp.click_main_navigation_panel_item("Настройки")

    # Клик по пункту 'Обслуживание и диагностика' в панели навигации настроек
    mp.click_subpanel_item("Обслуживание и диагностика")

    # Клик по пункту 'Статус обслуживания' в панели навигации обслуживания
    mp.click_subpanel_item("Статус обслуживания")

test_service_status_tab_content(browser)

Проверяет содержимое вкладки 'Статус обслуживания'.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_service_status_tab.py
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
def test_service_status_tab_content(self, browser: Page):
    """Проверяет содержимое вкладки 'Статус обслуживания'.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    sst = ServiceStatusTab(browser)

    # Проверка тулбара вкладки
    sst.should_be_toolbar()

    # Проверка наличия таблицы статусов сервисов
    sst.should_be_services_table()

    # Проверка содержимого таблицы сервисов
    sst.check_services_table_content()

test_service_status_table_row_highlighting(browser)

Проверяет выделение строк в таблице сервисов.

Parameters:

Name Type Description Default
browser Page

Экземпляр страницы Playwright.

required
Source code in tests\e2e\test_service_status_tab.py
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
def test_service_status_table_row_highlighting(self, browser: Page):
    """Проверяет выделение строк в таблице сервисов.

    Args:
        browser: Экземпляр страницы Playwright.
    """

    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))