Skip to content

TestNavigationPanel

Модуль тестов панели навигации.

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

TestNavigationPanel

Класс тестов для проверки панели навигации.

Атрибуты

browser: Фикстура для работы с браузером.

Source code in tests\components\test_navigation_panel.py
14
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
class TestNavigationPanel:
    """Класс тестов для проверки панели навигации.

    Атрибуты:
        browser: Фикстура для работы с браузером.
    """

    def test_verticall_scrolling(self, browser: Page):
        """Проверяет вертикальную прокрутку панели навигации.

        Args:
            browser: Фикстура для работы с браузером.

        Raises:
            AssertionError: Если панель не поддерживает прокрутку.
        """

        # Действия:
        lp = LoginPage(browser)
        lp.do_login()

        # Мы на главной странице
        mp = MainPage(browser)

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

        # Открываем все пункты панели
        mp.click_main_navigation_panel_item("Настройки")
        mp.expand_navigation_subpanel()

        mp.click_main_navigation_panel_item("Объекты")
        mp.wait_for_timeout(300)
        mp.expand_navigation_subpanel()

        # Проверяем возможность вертикальной прокрутки
        is_scrollable = mp.check_navigation_panel_verticall_scrolling()
        assert is_scrollable, "Should be vertical scrolling"

        # Действия:
        # Прокручиваем вверх и проверяем видимость элемента
        mp.scroll_navigation_panel_up()
        mp.check_navigation_panel_item_visibility("Панель приборов")
        mp.wait_for_timeout(3000)

        # Прокручиваем вниз и проверяем видимость элемента Настройки/ZTP/Шаблоны
        mp.scroll_navigation_panel_down()
        mp.check_navigation_panel_item_visibility("Шаблоны_2")
        mp.wait_for_timeout(2000)

test_verticall_scrolling(browser)

Проверяет вертикальную прокрутку панели навигации.

Parameters:

Name Type Description Default
browser Page

Фикстура для работы с браузером.

required

Raises:

Type Description
AssertionError

Если панель не поддерживает прокрутку.

Source code in tests\components\test_navigation_panel.py
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
def test_verticall_scrolling(self, browser: Page):
    """Проверяет вертикальную прокрутку панели навигации.

    Args:
        browser: Фикстура для работы с браузером.

    Raises:
        AssertionError: Если панель не поддерживает прокрутку.
    """

    # Действия:
    lp = LoginPage(browser)
    lp.do_login()

    # Мы на главной странице
    mp = MainPage(browser)

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

    # Открываем все пункты панели
    mp.click_main_navigation_panel_item("Настройки")
    mp.expand_navigation_subpanel()

    mp.click_main_navigation_panel_item("Объекты")
    mp.wait_for_timeout(300)
    mp.expand_navigation_subpanel()

    # Проверяем возможность вертикальной прокрутки
    is_scrollable = mp.check_navigation_panel_verticall_scrolling()
    assert is_scrollable, "Should be vertical scrolling"

    # Действия:
    # Прокручиваем вверх и проверяем видимость элемента
    mp.scroll_navigation_panel_up()
    mp.check_navigation_panel_item_visibility("Панель приборов")
    mp.wait_for_timeout(3000)

    # Прокручиваем вниз и проверяем видимость элемента Настройки/ZTP/Шаблоны
    mp.scroll_navigation_panel_down()
    mp.check_navigation_panel_item_visibility("Шаблоны_2")
    mp.wait_for_timeout(2000)