Skip to content

TestServiceStatusTable

TestServiceStatusTable

Тесты для проверки таблицы статусов сервисов.

Содержит тесты для проверки: - Отображения таблицы статусов сервисов - Содержимого таблицы - Возможности вертикальной прокрутки

Source code in tests\components\test_services_table.py
 8
 9
10
11
12
13
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
class TestServiceStatusTable:
    """Тесты для проверки таблицы статусов сервисов.

    Содержит тесты для проверки:
    - Отображения таблицы статусов сервисов
    - Содержимого таблицы
    - Возможности вертикальной прокрутки
    """

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

        Выполняет:
        1. Авторизацию в системе
        2. Переход на главную страницу
        3. Проверку видимости панели навигации
        4. Переход на вкладку 'Статус обслуживания'

        Args:
            browser: Фикстура браузера
        """
        # Авторизация в системе
        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_scrolling(self, browser):
        """Тест проверки прокрутки таблицы статусов сервисов.

        Проверяет:
        1. Наличие таблицы статусов сервисов
        2. Содержимое таблицы
        3. Возможность вертикальной прокрутки
        4. Видимость строк после прокрутки

        Args:
            browser: Фикстура браузера
        """
        # Инициализация страницы с таблицей статусов сервисов
        sst = ServiceStatusTab(browser)

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

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

        # Проверка возможности вертикальной прокрутки
        is_scrollable_vertically = sst.check_services_table_verticall_scrolling()
        assert is_scrollable_vertically, "Should be verticall scrolling"

        # Прокрутка вниз и проверка видимости последней строки
        sst.scroll_services_table_down()
        sst.check_services_table_last_row_visibility()
        sst.wait_for_timeout(3000)

        # Прокрутка вверх и проверка видимости первой строки
        sst.scroll_services_table_up()
        sst.check_services_table_first_row_visibility()
        sst.wait_for_timeout(2000)

setup(browser)

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

Выполняет: 1. Авторизацию в системе 2. Переход на главную страницу 3. Проверку видимости панели навигации 4. Переход на вкладку 'Статус обслуживания'

Parameters:

Name Type Description Default
browser

Фикстура браузера

required
Source code in tests\components\test_services_table.py
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
@pytest.fixture(scope="function", autouse=True)
def setup(self, browser):
    """Фикстура для настройки тестового окружения.

    Выполняет:
    1. Авторизацию в системе
    2. Переход на главную страницу
    3. Проверку видимости панели навигации
    4. Переход на вкладку 'Статус обслуживания'

    Args:
        browser: Фикстура браузера
    """
    # Авторизация в системе
    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("Статус обслуживания")

test_scrolling(browser)

Тест проверки прокрутки таблицы статусов сервисов.

Проверяет: 1. Наличие таблицы статусов сервисов 2. Содержимое таблицы 3. Возможность вертикальной прокрутки 4. Видимость строк после прокрутки

Parameters:

Name Type Description Default
browser

Фикстура браузера

required
Source code in tests\components\test_services_table.py
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
def test_scrolling(self, browser):
    """Тест проверки прокрутки таблицы статусов сервисов.

    Проверяет:
    1. Наличие таблицы статусов сервисов
    2. Содержимое таблицы
    3. Возможность вертикальной прокрутки
    4. Видимость строк после прокрутки

    Args:
        browser: Фикстура браузера
    """
    # Инициализация страницы с таблицей статусов сервисов
    sst = ServiceStatusTab(browser)

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

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

    # Проверка возможности вертикальной прокрутки
    is_scrollable_vertically = sst.check_services_table_verticall_scrolling()
    assert is_scrollable_vertically, "Should be verticall scrolling"

    # Прокрутка вниз и проверка видимости последней строки
    sst.scroll_services_table_down()
    sst.check_services_table_last_row_visibility()
    sst.wait_for_timeout(3000)

    # Прокрутка вверх и проверка видимости первой строки
    sst.scroll_services_table_up()
    sst.check_services_table_first_row_visibility()
    sst.wait_for_timeout(2000)